在 Mobile Safari 中禁用同源策略

     2023-02-27     220

关键词:

【中文标题】在 Mobile Safari 中禁用同源策略【英文标题】:Disable Same Origin Policy in Mobile Safari 【发布时间】:2012-08-22 10:24:00 【问题描述】:

我有一个 HTML5/JavaScript 应用程序,最初是为在某些汽车上运行而编写的。基本上,我需要将我的应用设置为在浏览器中运行,以便向客户展示一个简单的演示。

我正在使用 jQuery .ajax,由于同源策略而导致问题。我找到了很多在桌面浏览器中禁用此功能的方法,但在移动浏览器中却没有。

我的目标是在 iPad 上的 Mobile Safari 中演示该应用程序。有什么方法可以暂时禁用 iPad 上的同源策略?

【问题讨论】:

+1,我也很想回答这个问题。 您是否尝试在服务器上设置标头 Access-Control-Allow-Origin: *? 不幸的是,我无法控制要进行 AJAX 调用的服务器。我的短期解决方案是在托管 html/js 的同一台服务器上托管 php 代理脚本。幸运的是,我需要的服务最终将 CORS 标头添加到它们的响应中,这使我能够取消我的代理脚本。 目前(今天)没有其他合适的解决方案,而不是设置标题“Access-Control-Allow-Origin: *”。您的客户端解决方案不会让您满意。另一种方法是使用 JSONP(=改变你的通信方式)。所有这些解决方案都已发布。 【参考方案1】:

我在使用煎茶应用时遇到了同样的问题。我通过设置我的 javascript ajax 调用的基本路径来解决,例如:

var BASEPATH = 'http://192.168.1.200/myapp';

$.ajax(
  url: BASEPATH+'/someaction'
);

我在手机上使用http://192.168.1.200/myapp访问它

我的问题是我只能通过 IP 访问移动设备,但 ajax 调用指向 localhost。

希望这个技巧有所帮助。

【讨论】:

【参考方案2】:

您需要运行 Web 服务器,而不是文件协议。

【讨论】:

它必须在网络服务器上运行才能从 iPad 访问。问题是我无法控制我调用的服务,它们的响应中不包含 CORS 标头。我想出的解决方案是在与我的 html/js 相同的服务器上托管一个 php 代理脚本。【参考方案3】:

基本上,你需要一个标题。

将此代码放在您要向其发送跨域请求的页面顶部。

<?php header("Access-Control-Allow-Origin: *"); ?>

小心使用 *,因为这允许任何网站向发送该标头的页面发送请求。

* 可以替换为域,例如 example.com、example.net。

【讨论】:

【参考方案4】:

尝试在您的 ajax 调用中使用 JSONP。它将绕过同源策略。

http://learn.jquery.com/ajax/working-with-jsonp/

【讨论】:

【参考方案5】:

如果您对公共代理使用 ajax 调用,它基本上可以删除相同的源头标头,那么在 Javascript 中是可能的。或者您可以编写一个 php curl 获取页面,在其中调用使用 ajax。有关这方面的代码,请查看此博文:

http://thewebtimes.tumblr.com/post/90549614884/access-forbidden-webpages-with-javascript

【讨论】:

在 Chrome 中禁用同源策略

】在Chrome中禁用同源策略【英文标题】:DisablesameoriginpolicyinChrome【发布时间】:2011-03-0709:06:25【问题描述】:有什么方法可以在Google的Chrome浏览器上禁用Same-originpolicy?【问题讨论】:另见peter.sh/experiments/chromium-command-line-switches... 查看详情

在 TWebbrowser 中禁用同源策略

】在TWebbrowser中禁用同源策略【英文标题】:DisableSameOriginPolicyinTWebbrowser【发布时间】:2014-07-0716:08:32【问题描述】:我目前正在为我们的软件创建一个演示应用程序,它基本上是一个网站,只是在一个与TWebbrowser一起使用的delph... 查看详情

如何在 Chrome 扩展程序中禁用同源策略?

】如何在Chrome扩展程序中禁用同源策略?【英文标题】:HowtodisablesameoriginpolicyinChromeextension?【发布时间】:2011-08-2810:27:27【问题描述】:也许有一些设置可以在扩展上下文中禁用它。因为我正在开发一个扩展,所以我应该有责... 查看详情

在 Android Chrome 上禁用同源策略

】在AndroidChrome上禁用同源策略【英文标题】:DisablesameoriginpolicyonAndroidChrome【发布时间】:2012-08-2923:11:32【问题描述】:有没有办法,我搜索了其他帖子并没有找到任何关于android版本的答案。【问题讨论】:【参考方案1】:无... 查看详情

禁用 Firefox 同源策略

】禁用Firefox同源策略【英文标题】:Disablefirefoxsameoriginpolicy【发布时间】:2013-06-0922:18:34【问题描述】:我正在开发一个本地研究工具,它要求我关闭Firefox的同源策略(在脚本访问方面,我并不真正关心跨域请求)。更具体地... 查看详情

禁用同源策略/在 WebKit WebViews 中创建跨域 XMLHttpRequests?

】禁用同源策略/在WebKitWebViews中创建跨域XMLHttpRequests?【英文标题】:DisabletheSameOriginPolicy/makingcrossdomainXMLHttpRequestsinWebKitWebViews?【发布时间】:2011-01-2603:30:50【问题描述】:我想在我自己的嵌入式WebView中禁用XMLHttpRequests的同源... 查看详情

无法在 nginx 上禁用同源策略

】无法在nginx上禁用同源策略【英文标题】:Can\'tdisablesameoriginpolicyonnginx【发布时间】:2014-01-2901:34:24【问题描述】:我需要在服务器上禁用同源策略。作为背景:我已经通过禁用网络安全标志启动chrome来验证一切正常。一切正... 查看详情

尝试禁用 Chrome 同源策略

】尝试禁用Chrome同源策略【英文标题】:TryingtodisableChromesameoriginpolicy【发布时间】:2014-03-2810:20:26【问题描述】:我正在尝试学习melonJS教程。它说我应该使用以下两种方法之一禁用跨域请求:--disable-web-security--allow-file-access-from... 查看详情

尝试禁用 Chrome 同源策略

】尝试禁用Chrome同源策略【英文标题】:TryingtodisableChromesameoriginpolicy【发布时间】:2014-03-2810:20:26【问题描述】:我正在尝试学习melonJS教程。它说我应该使用以下两种方法之一禁用跨域请求:--disable-web-security--allow-file-access-from... 查看详情

无法解决的 CORS 问题!如何在 MacOS 上禁用 Chrome 的同源策略?

】无法解决的CORS问题!如何在MacOS上禁用Chrome的同源策略?【英文标题】:UnresolvableCORSissue!HowtodisablethesameoriginpolicyofChromeonMacOS?【发布时间】:2018-05-2523:09:31【问题描述】:有一段时间,我一直面临关于CORS的问题。我正在使用lo... 查看详情

禁用浏览器同源策略的方法

...有的时候会涉及到数据安全的问题,这时候我们可以通过禁用本地浏览器的同源策略来进行跨域的联调ie的禁用同源策略设置,进入ie的网际网路选项设置,然后选择安全性,再选择自订等级,然后下拉,找到「存取跨网络的资... 查看详情

我可以在任何浏览器上禁用 SOP(同源策略)进行开发吗?

】我可以在任何浏览器上禁用SOP(同源策略)进行开发吗?【英文标题】:CanIdisableSOP(SameOriginPolicy)onanybrowserfordevelopment?【发布时间】:2010-09-2417:33:06【问题描述】:我想在我的Windows机器上开发JavaScript。你知道我可以关闭SameOrig... 查看详情

Chrome:禁用本地主机的同源策略

】Chrome:禁用本地主机的同源策略【英文标题】:Chrome:Disablesameoriginpolicyforlocalhost【发布时间】:2014-02-0508:29:51【问题描述】:我正在开发一个phonegap/cordova应用程序,它不受我关心的网站的同源策略的约束。我使用chrome浏览器... 查看详情

在不安装插件的情况下禁用 Firefox 同源策略

】在不安装插件的情况下禁用Firefox同源策略【英文标题】:DisableFirefoxSameOriginPolicywithoutinstallingaplugin【发布时间】:2018-07-3021:29:15【问题描述】:有没有办法通过切换浏览器中的标志来禁用MozillaFirefox浏览器上的sameoriginpolicy?... 查看详情

JavaFX WebView 禁用同源策略(允许跨域请求)

】JavaFXWebView禁用同源策略(允许跨域请求)【英文标题】:JavaFXWebViewdisableSameoriginpolicy(allowcrossdomainrequests)【发布时间】:2013-04-1909:53:32【问题描述】:我正在开发一个JavaFX应用程序,它主要是一个美化的网页。它是一个桌面应... 查看详情

webdriver.io 无法为 iframe 禁用同源策略

】webdriver.io无法为iframe禁用同源策略【英文标题】:webdriver.iocan\'tdisablesame-origin-policyforiframe【发布时间】:2017-12-2710:58:48【问题描述】:我需要为我的自动测试禁用同源策略。我在Ubuntu16.04上使用webdriver.io+selenium独立服务器+chrom... 查看详情

Chrome 禁用网络安全同源策略不再起作用

】Chrome禁用网络安全同源策略不再起作用【英文标题】:Chromedisablewebsecuritysameoriginpolicynomoreworking【发布时间】:2016-12-1117:14:51【问题描述】:更新我的chrome后,我无法使用--disable-web-security命令禁用网络安全。我尝试了很多选项... 查看详情

对 Chrome 的同源策略的困惑:如何在不要求用户禁用 Chrome 中的安全性的情况下摆脱它?

】对Chrome的同源策略的困惑:如何在不要求用户禁用Chrome中的安全性的情况下摆脱它?【英文标题】:ConfusionaboutChrome\'ssameoriginpolicy:howtogetridofitwithoutaskingtheuserdisablesecurityinChrome?【发布时间】:2014-04-1008:04:04【问题描述】:我很... 查看详情