【问题标题】:Connect to Azure Mobile Services from dynamic HTML content in WebView从 WebView 中的动态 HTML 内容连接到 Azure 移动服务
【发布时间】:2016-06-30 08:32:44
【问题描述】:

如果我按照说明进行操作,我可以加载 Azure 移动服务快速入门中提供的 HTML/JavaScript 示例。但该示例涉及在 localhost 上托管网页。

我的要求是在现有的 Windows Phone 应用程序中显示与 WAMS 通信的类似网页。我将三个文件(index.html、page.js 和 style.css)添加到项目中,并在 web 视图中导航到 index.html。

它似乎没有连接到 azure 移动服务。我在 CORS 白名单中添加了应用程序名称,但没有成功。为了连接到 Azure 移动服务,是否绝对有必要在某处托管页面?如果没有,我需要做什么?

【问题讨论】:

    标签: javascript azure webview windows-phone-8.1 azure-mobile-services


    【解决方案1】:

    这是 Internet Explorer 的一般限制。示例见:https://blogs.msdn.microsoft.com/ieinternals/2012/06/19/enhanced-protected-mode-and-local-files/

    更好的想法是将您的页面封装在 Apache Cordova 应用程序中 - 这允许您使用几乎相同的东西,但具有明确的内容安全设置。此时,您应该使用 Azure 移动应用程序(不是移动服务),这里有一个教程:https://azure.microsoft.com/en-us/documentation/articles/app-service-mobile-cordova-get-started/

    【讨论】:

    • 感谢 Adrian,我按照您提供的第一个链接将以下内容添加到我的 HTML 中: 现在它可以在 windows phone 上运行。它是否也可以在 android/iOS 上运行?
    • 我不会说“预期” - 这取决于用于打开的浏览器及其特定要求。不幸的是,这些事情一直在变化,所以今天有效的可能明天就不行了。您最好的机会是封装在 Apache Cordova 应用程序中,这样您就可以确信它会正常工作。
    • 谢谢阿德里安。我很难使用 Apache Cordova 应用程序。我现在非常接近按照我最初想要的方式实现这一点。我让它在 Firefox、Chrome、Opera 和 IE 上运行。但不能让它在 Windows Mobile webview 控件中工作。我正在使用 NavigateToString() 方法,并且正在从数据库中获取 html(带有内联 javascript 和 css)字符串。我在 CORS 白名单中添加了 * 和 null。在 javascript 调试控制台中,我看到它正在发送“关于:”作为来源。我尝试在 CORS 白名单中添加“about:”,但它不允许我添加(它说 ':' 是无效字符)。
    • 我也尝试添加“about*”。但是同样的错误出现在 JavaScript 控制台中,提示我需要对“关于:”做一些事情。在这种情况下,我应该在 CORS 白名单中添加什么?
    猜你喜欢
    • 2012-11-01
    • 2015-02-24
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-03
    相关资源
    最近更新 更多