2014-07-14 45 views
-1

我在php站点有一个登录表单。当用户填写表单并提交时,表单通过ajax(jQuery(form).ajaxSubmit)提交给asp.net站点并重定向到asp.net站点的成员区域。这两个网站位于不同的域。我可以使用户从php网站以这种方式登录到asp.net网站吗?我拥有这两个网站,所以我可以根据需要修改这两个网站。我使用的是Ajax,因为登录表单位于jquery弹出窗口中,我需要在弹出窗口中显示登录错误(用于外观和感觉的一致性)。由于从php站点登录到asp.net mvc站点

+0

如果登录导致重定向,为什么要使用AJAX呢?一个标准的表单POST会容易得多。 – David

+0

@大卫是的,我可以做到这一点,但我需要显示登录错误消息等用户登录窗体是在php网站的jQuery弹出。这就是为什么我使用ajax – Asela

+0

我猜你正面临着crossdomain policys的问题。有几个选项可以解决这个问题。使用JSONP,在asp.net网站上允许跨域,在web.config中或封装ajax调用。而不是直接调用asp.net网站。通过ajax调用同一个域上的php,并且php向asp.net站点发出服务器端请求以获取posibles错误。 – frikinside

回答

0

假设你正在使用的cookies,终端用户可以与站点B的正确的cookie被颁发的唯一方法是,如果他们访问网站:那么,你可以这样做......

  • 网站A拍摄凭证
  • 站点A通过凭据到B
  • 站点B认证并给出了一个URL回到站点A
  • 站点A将用户重定向到URL
  • 站点B使用的URL发出一个cookie用户

这使得A站点负责认证,但它不必要的复杂,而且错误会导致漏洞。

一个更好的办法是......

  • 网站A提供哪些职位到站点B
  • 站点B认证,并返回一个重定向到站点A(取决于成功不同的URL)
  • 登录表单

这样,B全权负责自己的认证和cookies。

+0

非常感谢您的回答 – Asela