How can I set a cookie in a request using Fiddler?

后端 未结 7 486
深忆病人
深忆病人 2020-12-29 01:06

I need to set a cookie before I issue a request to a Web site using Fiddler. How do I do this?

相关标签:
7条回答
  • 2020-12-29 01:19

    When running Fiddler as a reverse Proxy you can modify the response headers via FiddlerScript by adding a line in the OnBeforeResponse method:

    static function OnBeforeResponse(oSession: Session) {
        // ...
        oSession.oResponse["Set-Cookie"] = "sessionToken=abc123; Expires=Wed, 09 Jun 2021 10:18:14 GMT";
    }
    

    Also check Fiddler docs about Modifying a Request or Response for more info.

    0 讨论(0)
  • 2020-12-29 01:20

    You can also use the Fiddler Composer.

    1. Run Fiddler
    2. Open the Composer Tab on the top.

    It's easiest if you can start with another request from your web site. To do this capture a the request you want to modify, then drag it from the UI to the composer tab.

    A good explanation is here: http://www.debugtheweb.com/Fiddler/help/composer.asp

    0 讨论(0)
  • 2020-12-29 01:24

    Simple...You need to set a header value, with your request, like so:

    Cookie: YourCookieName=YourCookieValue
    
    0 讨论(0)
  • 2020-12-29 01:26

    You need to be more specific about what you're trying to do.

    You can edit (or add) an outbound Cookie header to send a cookie to the website. You can do this either manually or via the FiddlerScript engine. But that doesn't "set" the cookie on the client-- it simply sends it to the server. If you want to set a cookie on the client, you either have to use another means, or you can inject a Set-Cookie response header on a previous response from the server, with the value you want to set on the client.

    0 讨论(0)
  • 2020-12-29 01:35

    To do this using the FiddlerScript engine, add the following code into the onBeforeRequest method:

    oSession.oRequest["Cookie"] = (oSession.oRequest["Cookie"] + ";YourCookieName=YourCookieValue");
    

    This will preserve any other cookies that have been set.

    0 讨论(0)
  • 2020-12-29 01:38

    This solution is valid for Cookie based authentication:

    If you want to test the API/url which have authentication enabled, please try following, i am showing for MVC web API on IIS server. usually there are more than 1 cookie responsible for authorization, so you may need to send more than 1 cookie in header as follows:

    User-Agent: Fiddler Host: localhost:51000 content-Type: application/json Cookie : .ASPXAUTH=xxxxx;ASP.NET_SessionId=yyyy;__RequestVerificationToken=zzzz
    
    0 讨论(0)
提交回复
热议问题