在本地运行的Azure移动服务(点网后端)会引发未经授权的错误

时间:2014-04-18 12:51:46

标签: .net windows-phone-8 iis-express azure-mobile-services

我创建了一个全新的基于Azure Net服务的Dot Net后端服务,下载后,将服务部分发布到azure并发布设置。一切正常。

(这是Azure Mobile服务生成的应用程序的默认设置,未对其进行任何更改。)

现在开发&调试目的我需要连接本地服务。以下就是我所做的

  1. 更新了“applicationhost.config”IIS表达文件以获得新的绑定类型
  2. 其中192.168.2.6是我的本地内部IP

    1. 在管理员模式下运行VS 2013。
    2. 将两个项目设置为解决方案的启动项目
    3. 更新了App.Xaml.cs中的以下代码

      public static MobileServiceClient MobileService = new MobileServiceClient(         “http:// 192.168.2.6:59984/”     );

    4. 运行

    5. 浏览器打开以显示正在运行的服务& WP8模拟器开始加载应用程序。
    6. 这就是发生的事情 我可以看到服务和&住在localhost:59984,我还可以在IIS Express工具栏图标中看到,http:// 192.168.2.6:59984也运行本地服务就好了。点击打开它&它显示默认的“Service Up& Running”页面

      WP8模拟器启动,Application Loads&我得到了 “请求无法完成。(未经授权)”错误。

      请查看下面的图片

      enter image description here

      我还运行了一个ntash命令,允许IIS express用于远程连接。如This Blog

      中所述 有人可以帮忙吗?我一直在努力奋斗2天以上&看起来很简单的事情,现在让我疯了。

      由于 Supreet Tare

2 个答案:

答案 0 :(得分:0)

我所需要的只是Visual Studio 2013 Update 2&一切正常。

答案 1 :(得分:0)

查看this article.

  

您需要在Web.config文件中指定服务的应用程序密钥:

     

<add key="MS_ApplicationKey" value="Overriden by portal settings" />

     

如果在Visual Studio中运行该服务,则不需要这些值,并且每个请求都将通过。在Azure上部署服务时,将使用正确的值覆盖这些值。但是,如果您在本地IIS上部署移动服务,则需要手动设置它们,并确保它们与您在客户端中输入的值相匹配。

     

更改web.config中的MS_ApplicationKey值并更新我的手机客户端应用程序以在MobileServiceClient构造函数中指定应用程序密钥后,我就可以通过手机点击该服务了!