J'envoie une requête sur le port 60080HttpListenerContext.Request.InputStream toujours null
var XHR = new XMLHttpRequest();
XHR.open('GET', 'http://localhost:60080/api/products');
XHR.setRequestHeader("Content-Type", "application/json; charset=UTF-8");
XHR.body = JSON.stringify({ email: "[email protected]", response: { name: "Tester" } });
XHR.send();
et de recevoir l'aide HttpListener
this.listener = new HttpListener();
listener.Prefixes.Add("http://+:60080/");
listener.Start();
listener.BeginGetContext(HandleRequest, listener);
si je reçois HttpListenerContext
HttpListenerContext context = listener.EndGetContext(result);
Quand j'essaye pour obtenir InputStream (sur Android ou UWP), il est constamment nul. ContentLength = 0;
Lorsque je teste sur iOS InputStream non null et ContentLength > 0;
Quel est mon problème?
MISE À JOUR:
Je résolu mon problème.
Le fait que j'ai envoyé une méthode Post, mais en réalité la méthode OPTIONS.
J'ai envoyé les en-têtes dans une réponse et puis vint la méthode Post
httpListenerContext.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept, X-Requested-With");
httpListenerContext.Response.AddHeader("Content-type", "application/json");
httpListenerContext.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST");
httpListenerContext.Response.AddHeader("Access-Control-Max-Age", "1728000");
httpListenerContext.Response.AppendHeader("Access-Control-Allow-Origin", "*");
httpListenerContext.Response.Close();
Où fait chaque partie de la course de code? La première partie ressemble à du JavaScript, c'est invoqué où? – Cheesebaron
Oui, la première partie de ce js. Il est appelé lorsque l'application est lancée dans un webview. HttpListenerContext context = listener.EndGetContext (résultat); appelé dans HandleRequest. J'ai résolu mon problème. Voir mise à jour. – temiklis
Pouvez-vous ajouter votre solution en guise de réponse et l'accepter après 24 heures? – Cheesebaron