У меня есть код, запущенный в Postman, но когда я пытаюсь в C #, он не запускается и возвращает ошибку 801, что означает нулевой номер мобильного телефона, однако он не равен нулю и работает нормально в Postman: я запускаю с localhost, и этот код будет запущен из настольного приложения

Мой код:

            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12 | SecurityProtocolType.Ssl3;
        
        var postData = "username=xxxxx&password=xxxxx&sender= salon&language=1&Mobile=000000000&message=test4444";              
        
            
        string Url = "https://smsmisr.com/api/webapi/?";
        HttpWebRequest myHttpWebRequest = (HttpWebRequest)HttpWebRequest.Create(Url);
        
        

        myHttpWebRequest.Method = "POST";

        byte[] data = Encoding.ASCII.GetBytes(postData);
        
        
        myHttpWebRequest.ContentType = "application/jsonn";
        //myHttpWebRequest.Accept = "application/json";
        
        myHttpWebRequest.ContentLength = data.Length;

        Stream requestStream = myHttpWebRequest.GetRequestStream();
        requestStream.Write(data, 0, data.Length);
        requestStream.Close();

        HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();

        Stream responseStream = myHttpWebResponse.GetResponseStream();

        StreamReader myStreamReader = new StreamReader(responseStream, Encoding.Default);

        this.Label16.Text = myStreamReader.ReadToEnd();

        
        myStreamReader.Close();
        responseStream.Close();

        myHttpWebResponse.Close();
0
Ikrami Hall 5 Апр 2021 в 21:54

1 ответ

Лучший ответ

Ваш тип контента - json, но вы передаете строку запроса в качестве полезной нагрузки. Почему бы не привязать эту полезную нагрузку?

{
  "username": "xxxxx",
  "password": "xxxxx",
  "sender": "salon",
  "language": 1,
  "Mobile": "000000000",
  "message": "test4444"
}
0
cycopepe 5 Апр 2021 в 20:55