Search code examples
javascriptfiddlersame-origin-policy

Proxy to trick my local enviroment for preventing Same-Origin error


I call from http://my.domain.com WebService at https://sub.domain.com and it's OK

When I call locally from http://local.my.domain.com WebService at https://sub.domain.com it's Cross-Origin request which get blocked in IE or Firefox.

How to proxy it to trick my local enviroment for letting me use it? I use Fiddler.


Solution

  • This is easily done with Fiddler.

    1. Change your client code so that it's not making a cross-origin call. E.g. instead of https://sub.domain.com/whatever it instead calls http://local.my.domain.com/myservice/
    2. Use Fiddler's script feature to rewrite the request URL. Inside Rules > OnBeforeRequest, add: if (oSession.HostnameIs("local.my.domain.com") && oSession.uriContains("/myservice/")) { oSession.fullUrl = "https://sub.domain.com/whatever"; }