代理欺骗我的本地环境以防止同源错误
Proxy to trick my local enviroment for preventing Same-Origin error
我在 https://sub.domain.com
从 http://my.domain.com
WebService 调用,没问题
当我从位于 https://sub.domain.com
的 http://local.my.domain.com
WebService 本地调用时,它是在 IE 或 Firefox 中被阻止的跨域请求。
如何代理它来欺骗我的本地环境让我使用它?我用的是Fiddler
使用 Fiddler 很容易做到这一点。
- 更改您的客户端代码,使其不进行跨源调用。例如。而不是
https://sub.domain.com/whatever
而是调用 http://local.my.domain.com/myservice/
- 使用 Fiddler 的脚本功能重写请求 URL。内部规则 >
OnBeforeRequest
,添加:
if (oSession.HostnameIs("local.my.domain.com") && oSession.uriContains("/myservice/"))
{
oSession.fullUrl = "https://sub.domain.com/whatever";
}
我在 https://sub.domain.com
从 http://my.domain.com
WebService 调用,没问题
当我从位于 https://sub.domain.com
的 http://local.my.domain.com
WebService 本地调用时,它是在 IE 或 Firefox 中被阻止的跨域请求。
如何代理它来欺骗我的本地环境让我使用它?我用的是Fiddler
使用 Fiddler 很容易做到这一点。
- 更改您的客户端代码,使其不进行跨源调用。例如。而不是
https://sub.domain.com/whatever
而是调用http://local.my.domain.com/myservice/
- 使用 Fiddler 的脚本功能重写请求 URL。内部规则 >
OnBeforeRequest
,添加:if (oSession.HostnameIs("local.my.domain.com") && oSession.uriContains("/myservice/")) { oSession.fullUrl = "https://sub.domain.com/whatever"; }