2016-03-31 7 views
0

zurückgeben Ich brauche deine Hilfe, ich entwickle einen Javascript-Code, der einen Webservice und erhalten Daten im JSON-Format.Fiddler AutoResponder sollte eine JSON-Antwort mit jQuery-Session-ID in Anfrage

Wenn ich frage den Webservice wie folgt aus:

https://Server/ServiceEndPoint?id=12345

MyApplication fügt einige andere Parameter auf meiner Web-Service-URL wie folgt aus:

https://Server/ServiceEndPoint?id=12345& Rückruf = jQuery18205735686348496944_1459416484049 & _ = 1459416484892

Diese jQuery-Session-ID ist generisch.

Also verwende ich Fiddler, um die Webservice-Antwort zu simulieren. Und ich brauche diese jQuery Sitzungs-ID in der Anfang meiner Antwort wie folgt hinzuzufügen:

jQuery18205735686348496944_1459416484049 ({ „Daten“: „JSON-Daten“})

Kann irgend jemand hilft mir, dies zu tun.

Vielen Dank.

Antwort

0

I Used FiddlerScript, es zu tun:

if (oSession.HostnameIs("ServerName")){ 

     var body = ""; 
     var s_qs = (oSession.url + "?").split("?")[1]; 

     var querystring = HttpUtility.ParseQueryString(s_qs); 
     var s_callback = querystring.Get("callback"); 

     if(oSession.uriContains("EndPointName")) 
     { 
      body = s_callback + "({'data':'datContent'})"; 
     } 
     oSession.utilSetResponseBody(body); 
    } 
+0

Sie hat nicht gesagt, wo Sie diese setzen, aber aus dem Blick von ihm Es läuft, nachdem er den Server getroffen hat. Wenn Sie stattdessen 'OnBeforeRequest' und' utilCreateResponseAndBypassServer' verwenden, können Sie das vermeiden. – EricLaw

0

Der AutoResponder von Fiddler kann dies nicht selbst tun (er kann keine Antwortstellen basierend auf der Anforderungs-URL ändern). Stattdessen müssten Sie ein einfaches FiddlerScript schreiben, um es zu tun. Z.B. Regeln> Anpassen Regeln> OnBeforeRequest

if (oSession.uriContains("server/ServiceEndPoint?")) { 
     oSession.utilCreateResponseAndBypassServer(); 
     oSession.oResponse.headers.Add("Content-Type", "application/json"); 
     oSession.ResponseBody = System.IO.File.ReadAllBytes("C:\\Your\\File.txt");    
     // TODO:Copy the callback value to the front of the response string here.  
    } 
+0

Il FiddlerScript gebraucht, es zu tun: – NJL

Verwandte Themen