Ich versuche zu überprüfen, ob es eine Ajax-Anfrage zu einer bestimmten URL gibt und wenn ja, dann versuche ich, ein Cookie zur Anfrage hinzuzufügen.HttpListner hört nicht
Aber mein HttpListner hört nur für localhost
. Wenn ich versuche, eine andere URL zu geben, hört sie nicht zu.
Ich habe meine Firewall auch ausgeschaltet aber immer noch das gleiche Problem.
Bitte sagen Sie mir, wo ich einen Fehler mache.
Unten ist mein Code:
class Program
{
static void Main(string[] args)
{
HttpListener listner = new HttpListener();
listner.Prefixes.Add("<my url>");//For example, https://www.google.co.in/
listner.Start();
HttpListenerContext context = listner.GetContext();
HttpListenerRequest request = context.Request;
WebRequest webReq = WebRequest.Create(request.Url);
//Copying the headers
System.Collections.Specialized.NameValueCollection headers = request.Headers;
for (int i = 0; i < headers.AllKeys.Length; i++)
{
if (!WebHeaderCollection.IsRestricted(headers.AllKeys[i]))
{
webReq.Headers.Add(headers.AllKeys[i], headers[headers.AllKeys[i]]);
}
}
webReq.ContentLength = request.ContentLength64;
webReq.ContentType = request.ContentType;
webReq.Headers.Add(HttpRequestHeader.Cookie, "<My Cookie>");
HttpListenerResponse response = context.Response;
WebResponse webResponse = webReq.GetResponse();
webResponse.GetResponseStream().CopyTo(response.OutputStream);
}
}
Ich bin ziemlich sicher, dass httplistener ist für die Herstellung von Webservern und dergleichen. Wenn Sie die URL auf google setzen, würde das bedeuten: "Ich möchte mit Webanfragen umgehen, die in Google eingehen", was nicht passieren wird. Was versuchst du damit zu tun? – James
Wenn ich versuche, eine Cross-Origin-Anfrage mit $ .ajax zu senden, entfernt der Browser die Cookies, die die Anfrage authentifizieren. Also schreibe ich einen Proxy, der die Anfrage abfängt, die Kopfzeile hinzufügt und sie dann sendet. – Karthik
Ich möchte Web-Anfragen bearbeiten, die google (Beispiel) von meinem Rechner – Karthik