CONVERTER PHP PARA C#

MAXGUIMEL 21/12/2016 17:18:13
#469913
Isto mesmo DS2T, achei um, mas ta faltando alguma coisa: Por que retorna apenas o sinal [].
Olhe o codigo:

itens é um array que traz os números de cel e a mensagem

string str = string.Join(Environment.NewLine,itens);


string url = [Ô]http://www.teste.com.br/gateway/sendjson/?[Ô];
HttpWebRequest httpWReq = (HttpWebRequest)WebRequest.Create(url);
ASCIIEncoding encoding = new ASCIIEncoding();
string postData = [Ô]&message[]=[Ô] + str; byte[] data = encoding.GetBytes(postData);
string postHash = [Ô]Hash: [Ô] + [Ô]000125897542[Ô];


httpWReq.Method = [Ô]POST[Ô]; //httpWReq.ContentType = [Ô]application/json[Ô];
httpWReq.ContentLength = data.Length;

httpWReq.SendChunked = true;

httpWReq.TransferEncoding = postHash;
httpWReq.Headers.Add([Ô]Hash[Ô], httpWReq.ContentType = [Ô]000125897542[Ô] + [Ô] ,[Ô] + httpWReq.SendChunked);

httpWReq.Headers.Add( [Ô]Produto[Ô], httpWReq.ContentType = [Ô]16[Ô]);


using (Stream stream = httpWReq.GetRequestStream())
{
stream.Write(data, 0, data.Length);
}

HttpWebResponse response = (HttpWebResponse)httpWReq.GetResponse();
string responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
MessageBox.Show(responseString);

Adaptei em cima deste código:

$data[] = array([ô]target[ô] => [ô]556285168504[ô], [ô]message[ô] => [ô]Mensagem de teste 2[ô], [ô]ident[ô] => [ô]message2[ô]);
$data[] = array([ô]target[ô] => [ô]556285168504[ô], [ô]message[ô] => [ô]Mensagem de teste 3[ô], [ô]ident[ô] => [ô]message3[ô]);

$data_string = json_encode($data);
$hash = [ô]#### HASH AQUI ####[ô];
$produto = 6;

$ch = curl_init([ô]http://www.exemplo/gateway/sendjson/?[ô]);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, [Ô]POST[Ô]);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER,
array([ô]Content-Type: application/json[ô],
[ô]Content-Length: [ô] . strlen($data_string),
[ô]Hash: [ô] . $hash,
[ô]Produto: [ô] . $produto) );
$result = curl_exec($ch);

echo $result;
?>
KERPLUNK 22/12/2016 02:27:30
#469926
O que o código em PHP apresentado faz é bem simples:
- Cria um array com dois ítens, ambos classes anônimas.
- Faz a serialização dos dados e configura detalhes do pacote Http, com configurações do cabeçalho, verbo e corpo(dados).
- Em seguida, simplesmente envia o pacote

Faça o mesmo em C# e pronto.
MAXGUIMEL 22/12/2016 08:02:17
#469930
Bom dia KERPLUNK, então ai que mora o problema, eu fiz e agora esta enviando só que agora dá a mensagem que não foi enciado o sms por que o hash e o produto nao foi lido, então retorna que o cliente não tem saldo, só que ele tem 2500 sms. O problema esta nestas linhas:

httpWReq.SendChunked = true;

httpWReq.TransferEncoding = postHash;
httpWReq.Headers.Add([Ô]Hash[Ô], httpWReq.ContentType = [Ô]000125897542[Ô] + [Ô] ,[Ô] + httpWReq.SendChunked);

httpWReq.Headers.Add( [Ô]Produto[Ô], httpWReq.ContentType = [Ô]16[Ô]);

O hash tem que ser header e trazer também como true, não sei se o tranfersencondig esta certo e o produto tem que ser parametro não achei na biblioteca httpWReq.
Acho que resolvendo essas duas questão a coisa vai.
Página 2 de 2 [13 registro(s)]
Tópico encerrado , respostas não são mais permitidas