【发布时间】:2014-11-09 21:26:05
【问题描述】:
我正在尝试使用 paypal 实现登录,我有 2 个不同的主机域
1- www.example.com
2- www.example.de
对于 paypal,我需要为此选择一个返回 URL,我选择了 www.example.com/callbackfrompaypal
所以在我的callbackfrompaypal中
if (!redirectUrl.Host.Equals(_dependencies.HttpRequestContextService.Request.Url.Host, StringComparison.OrdinalIgnoreCase)) //return back orginal domain
{
return View(redirectUrl); //If uri host is different than user's host turn back to user's host
}
redirect Url 是一个使用返回域创建的URI[查询参数并且可以获取原始主机]
所以如果用户从 www.example.de 进入并尝试登录,paypal 会这样给我回电话
www.example.com/callbackfrompaypal?redirectUrl=www.example.de
然后我比较重定向 URL 和当前 URL,如果它们不一样,我将重定向
www.example.de/callbackfrompaypal?redirectUrl=www.asdasd.de
但它会在 POP UP 中完成,正如你们猜想的那样,浏览器告诉我阻止了具有来源“https://www.example.com”的框架访问具有来源“https://www.example.de”的框架
你们能告诉我解决这个问题的方法吗
【问题讨论】:
标签: c# javascript html asp.net-mvc paypal