我正在尝试将帖子请求发送到其他网站,特别是Zoho.eu,以便我只需点击一下即可登录。实际上我想要POST到登录URL,我的用户名,密码等等。
我遇到了Cross origin问题,我已经看过许多不同的解决方案,例如JSONP,iFrame方法,CORS等,但所有这些都要求我能够访问我没有的第三方后端。
如何解决这个问题?我知道我可以以某种方式使用代理来避免交叉起源问题,但我不确定?
提前致谢。
答案 0 :(得分:1)
如果我理解正确,那么简短的回答是你不能。
代理不会帮助您在用户的浏览器中创建会话并登录。使用代理时,您代表用户从服务器处执行请求,并且无法将所需的会话值设置为目标域的用户Cookie。
这是故意的。发明了同源策略/ CORS的整个概念,以便其他人不能代表他们不拥有的域中的用户做某事。
我会考虑使用OAuth,这可能是您实现此类跨域登录流程的正确方法。
答案 1 :(得分:0)
一个简单的解决方案(这只是一个临时修复,您将不得不为生产代码找到更永久的解决方案)是硬编码服务器的名称,请求来自服务器控制器代码并允许访问从中。
答案 2 :(得分:0)
CORS保护意图。
Zoho通过OAuth集成为其网站提供了更清晰的身份验证方式。这是更清洁的整合方式。
在此处清楚地记录了步骤,
https://www.zoho.com/crm/help/api/using-authentication-token.html
不允许任何其他身份验证模式,可能会被Zoho阻止。
希望它有所帮助。