J'ai lu d'innombrables questions liées à mon problème, mais aucun d'entre eux ont résolu mon problème. Je fais un HttpWebRequest en C# dans lequel je publie des données et ensuite lire la réponse sauf que la réponse retourne toujours comme vide. J'ai essayé de changer request.contentType
, codant les données dans divers formats de ASCII non codé, & UTF8. Peu importe ce que je fais, ma réponse est vide. De plus comme une note de côté, ma demande va à travers la couche 7.C# HttpWebRequest retourne vide
var request = (HttpWebRequest)WebRequest.Create(serviceURL);
var postData = "\"device\"=\"9856\"";
var data = Encoding.ASCII.GetBytes(postData);
//request.ContentType = "application/x-www-form-urlencoded";
request.ContentType = "application/json; charset=utf-8";
request.Timeout = 5000;
request.Headers.Add("Authorization", b64);
request.Headers.Add("reqtime", hmacTS);
request.Headers.Add("appkey", APP_KEY1);
request.Method = "POST";
request.ContentLength = data.Length;
try
{
using (var stream = request.GetRequestStream())
{
stream.Write(data, 0, data.Length);
}
var response = (HttpWebResponse)request.GetResponse();
using (var streamReader = new StreamReader(response.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
updateWindow(this, "Results: " + result);
updateWindow(this, "Type: " + response.ContentType);
updateWindow(this, "Content Length: " + response.ContentLength);
}
}
catch (WebException a)
{
updateWindow(this, "ERROR: " + a);
}
Mon spectacle de réponse que:
Results:
Type: application/octet-stream
Content Length: 0
Juste pour mettre à jour tout le monde, je suis finalement arrivé à la racine du problème. Le fournisseur de services a dû redémarrer son serveur car la connexion à la base de données s'était éteinte. Après environ une semaine de combat avec ce code, je suppose qu'ils ont décidé de vérifier enfin pour moi ..... Merci à tous ceux qui ont essayé d'aider!
Avez-vous essayé d'utiliser quelque chose comme Fiddler pour réellement ** voir ** ce que vous envoyez et recevez sur le fil? –
Oui, j'ai utilisé un violoniste et le corps semble être correct. Le violoneux ne montre aucune exception à la transaction. – Konan
Je ne vois pas de corps de réponse dans le violoneux. Apparemment, je n'ai rien en retour .. Contenu-Longueur: 0, Type de contenu: application/octet-stream – Konan