小编Jar*_*SFT的帖子

无法使用本地.NET后端进行身份验证

我遵循了指南:

使用Mobile Services .NET for Windows Store进行身份验证入门

只要我不需要对用户进行身份验证,我就可以在本地运行该服务.如果我将服务发布到Azure,我也可以对用户进行身份验证.但我希望能够在本地测试验证用户.如何才能做到这一点?

我正在使用Live ID,并且我在Web.config中设置了正确的ClientID和ClientSecret.当我尝试从客户端调用LoginAsync时,调用失败,无法完成请求.(不允许的方法)

**更新2014-03-20**

根据Carlos和Henrik的评论,我已将本地服务更新为与我的服务器实例完全相同.我跟随Scot Hanselmans 出色的指南,现在我的服务在端口80 端口443 本地运行,并且具有完全有效的SSL证书.它甚至运行在完全相同的https://xxxx.azure-mabile.net主机名上.

通过这些更改,现在在针对我的本地计算机运行应用程序或针对Azure运行应用程序之间没有任何配置差异.我可以在浏览器中访问https://xxxx.azure-mabile.net,重定向到Live登录,登录,然后成功重定向回服务.在浏览器中一切正常.但它仍然无法在应用程序中工作.

我附加了调试器,将CLR错误设置为"抛出时中断",并设法在服务中捕获异常.这是我在即时窗口中看到的内容:

即时窗口

Response属性没有帮助.它不提供有关该问题的任何其他信息.

唯一突出的是应用程序尝试对/ login/microsoftaccount进行POST,而浏览器通常会在此地址执行GET(然后重定向).

**更新#2 2014-03-20**

以下Henriks指南后,远程调试,我能够加载符号,并得到一个微小的更多比特的信息:

"现有连接被远程主机强行关闭"

错误代码为10054(WSAECONNRESET)由对等方重置连接.

现在,Live Authentication服务器可能会强制终止连接,但只有在我使用应用程序进行身份验证时才会这样.同样,浏览器中的身份验证也很好.这与/ login/microsoftaccount是来自应用程序的POST 的事实相结合似乎表明我从LiveClient.LoginAsync返回的身份验证令牌存在问题.我会做更多的挖掘......

azure-mobile-services

6
推荐指数
1
解决办法
1531
查看次数

标签 统计

azure-mobile-services ×1