为什么这个 JavaScript 调用不会破坏“同源策略”

2023-12-07

我正在使用 jQuery 显示外部 JavaScript 文件。 “同源策略”没有被破坏的原因是因为它不是 AJAX 请求吗?

http://jsfiddle.net/m7q3H/52/

小提琴代码:

HTML


这里绝对没问题哦。您可以从任何您想要的地方引用 javascript 文件。例如,Google CDN 提供了常见的 js 文件,例如您可以使用的 jQuery:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>

顺便说一句,这正是 jQuery 的实现方式JSONP作品。它使用 javascript 来注入<script>动态标记到指向某个远程服务器端脚本的 DOM:

<script src="//remotedomain.com/script?callback=abc"></script>

这个远程脚本响应一个Content-Type: 'application/x-javascript'响应标头和以下正文:

abc({"foo":"bar"})

在您的域上,您只需定义abc功能:

<script type="text/javascript">
    function abc(data) {
        alert(data.foo);
    }
</script>

就这样:跨域 AJAX 的模拟(我说模拟是因为它没有使用本机 XHR 对象,但它达到了相同的效果)。

现在您可以理解为什么 jQuery 的 JSONP 实现仅限于 GET 请求 => 因为当您注入 script 标签时,浏览器仅向其发送 GET 请求src属性。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么这个 JavaScript 调用不会破坏“同源策略” 的相关文章

  • .push() 将多个对象放入 JavaScript 数组中返回“未定义”

    当我将项目添加到beats数组然后console log用户时 我得到了数组中正确的项目数 但是当我检查 length 时 我总是得到 1 尝试调用索引总是会给我 未定义 如下所示 Tom beats 1 我想我错过了一些明显的东西 但这让
  • Instagram 粉丝计数 - 使用 jQuery / json 和 PHP

    经过几个小时的工作和一些帮助萨希尔 米塔尔我们已经成功使用 jQuery json 和 PHP 检索 Instagram 关注者计数 这是我们设法整理的内容 希望对其他想要获取 Instagram 信息的人有所帮助 我们的 jQuery I
  • 在版本 4.4.6 中禁用 ckeditor 上下文菜单

    我在 Rails4 项目中使用 ckeditor 我尝试了 ckeditor gem 和 ckeditor rails gem 来提供 ckeditor 库 这里有多个帖子 人们希望删除 ckeditor 上下文菜单 以便可以显示本机浏览器
  • 通过 JavaScript 获取表单名称

    我有一个简单的问题 但我在网上找不到好的解决方案 我有这个 HTML 代码
  • 想要动态处理与分页相关的页码显示:ReactJS

    我有一些分页逻辑工作得很好 唯一的问题是我只能让它显示并固定数量的页面可供选择 现在我已经把它放到了 5 页 但我希望它能够根据总记录动态更改 假设我有 100 条记录 每页限制为 10 条 将有 10 页 现在我只能让它以这种方式显示 第
  • JQuery UI Selectable 插件:当 div 溢出时使滚动条不可选择

    我有一个 div 设置为overflow auto 该 div 的内容是可选择的 使用 jQuery UI 当 div 溢出并出现滚动条时 滚动条本身变为可选择状态 因此滚动效果不佳 在 FF Chrome 中 我可以滚动 div 但我得到
  • JavaScript 验证和 PHP 验证?

    我正在使用 jquery 验证插件来验证空表单 我还应该在 PHP 中检查一下以确保 100 正确吗 或者用 javascript 验证就可以了 谢谢 您应该始终在服务器上进行验证 如果用户以某种方式不使用 Javascript 提交表单
  • 导航栏下拉菜单(折叠)在 Bootstrap 5 中不起作用

    我在尝试使用以下命令创建响应式菜单或下拉按钮时遇到问题Bootstrap 5一切似乎都正常 导航图标和下拉图标出现 但它不起作用 当我单击nav图标或dropdown按钮 无dropdown menu apears 我想特别提到的是 我还包
  • 按下回车键时不刷新页面

    我遇到了一些问题 只要表单中有输入 回车键就会触发页面刷新 下面的代码 如果按下回车并且文本区域 input 中没有输入任何文本 则不会刷新页面 但是如果按下回车并且 input中有输入或者光标位于文本区域 我不确定是什么触发了它 因为 s
  • JavaScript 继承;调用和原型

    要在Javascript中实现继承 通常需要执行以下两个步骤 假设我有一个基类 Animal var Animal function name this name name 我现在想从中派生一个子类 Dog 所以我想说 var Dog fu
  • JavaScript推送函数中的动态变量

    我在 JavaScript 中使用推送功能 var chartData for var i 0 i lt 3 i chartData push date new Date year s mon s date s hr s min s sec
  • 如何使用角度材料在具有可扩展行的表格中创建嵌套垫表

    我有以下数据 id c9d5ab1a subdomain wing domain aircraft part id c9d5ab1a info mimetype application json info dependent parent
  • 如何在另一个自定义 Hook 中使用返回值的自定义 Hook?

    我正在使用 React native 其中有一个名为的自定义 HookuseUser使用以下方法从 AWS Amplify 获取用户信息Auth getUserInfro方法 然后获取返回对象的一部分并用它设置一个状态变量 我还有另一个名为
  • 如何计算特定字符在字符串中出现的次数

    我正在尝试创建一个函数来查看数组中的任何字符是否在字符串中 如果是 有多少个 我尝试计算每一种模式 但是太多了 我尝试使用 Python 中的 in 运算符的替代方案 但效果不佳 function calc fit element var
  • JavaScript eval("{}") 返回行为?

    根据ECMA 262 规范 http www ecma international org publications files ECMA ST Ecma 262 pdf 以下语句返回1 eval 1 eval 1 eval 1 var a
  • 使用 Javascript 设置 cookie [重复]

    这个问题在这里已经有答案了 我正在尝试构建我的第一个移动应用程序 它需要连接到我的 mysql 数据库并使用 json 返回数据 这很好 目前我有一个登录系统 一旦确定用户名和密码存在 它就会返回一条成功消息 对于下一步 我想在我的页面上使
  • Google Maps API (v3) 添加/更新标记

    编辑 它现在可以工作 但如果用户不允许或没有基于位置的服务 则不会加载 请参阅 jsfiddle 示例接受的答案评论 我已经浏览了一些教程和问题 但我无法安静地理解正在发生的事情 或者在这种情况下 没有发生 当用户单击链接时 我正在加载地图
  • 使用 Jade 评估自定义 javascript 方法 (CircularJSON)

    我想通过 Jade 将一个对象解析为客户端 JavaScript 通常这会起作用 script var object JSON parse JSON stringify object but my object is circular ht
  • 如何从 json 文件创建模型? (ExtJS)

    这是我想使用 json 文件创建的模型 Ext define Users extend Ext data Model fields name user id type int name user name type string 为了根据服
  • 使用velocity.js制作可拖动元素的动画

    我正在使用velocity js 为用户拖动的可拖动 SVG 元素设置动画 然而 velocity js 将先前的 mousemove 坐标排队并通过所有后续的 mousemove 坐标进行动画处理 我想要的是velocity js 不要对

随机推荐

  • Javascript 中的事件处理程序范围

    这可能是一个简单的问题 但我无法找出最佳答案 我有 10 个 div 屏幕上的元素 他们每个人都有一个click 事件监听器 div Click me 0 div div Click me 1 div div div div
  • iText7 C# 检查PDF签名后是否被锁定

    您好 我也尝试使用 iText7 Net 检查 PDF 文件在签名后是否被锁定 我们当前的版本是 7 1 8 目前我正在尝试一些代码 但这并不符合我的研究 try GET READER PdfReader reader new PdfRea
  • 在 C# 中对 IList 进行排序

    所以今天我遇到了一个有趣的问题 我们有一个返回 IList 的 WCF Web 服务 直到我想对它进行排序之前 这并不是什么大不了的事 事实证明 IList 接口没有内置排序方法 我最终使用了ArrayList Adapter list S
  • Laravel 棘轮套接字身份验证

    我开始学习 Ratchet reactPHP 我正在使用 laravel 但我谈到了有关安全的问题 如何根据用户是否登录来拒绝 websocket 连接 public function onOpen ConnectionInterface
  • Jersey 2.x 中的过多警告消息

    我不断从任何使用 APPLICATION FORM URLENCODED 表单数据的 POST 操作中收到这些警告消息 A servlet request to the URI local request URI contains form
  • Cordova 相机 - Ionic

    我已经寻找解决方案近两天了 我正在尝试使用 ngCordova 相机插件 我将 ionic yeoman 框架与 AngularJS 结合使用 我所做的是 bower install save ngCordova Added ngCordo
  • SQL Server 插入触发器以及如何引用插入的数据

    高级我有两个表需要镜像一些数据 我无法遍历并更改所有代码以写入这两个表 因此我认为只要将数据插入第一个表 我就可以使用 SQL 触发器将数据插入到第二个表中 这是我被困住的地方 CREATE TRIGGER new trigger INSE
  • 为什么我的 Debug.Write 损坏了?

    有人可以解释为什么我的 Debug Write 无明显原因停止工作 没有输出可见 我在 Windows XP Windows 2003 Server 和 Windows 7 上的 Visual Studio 2008 从未在 2005 上
  • 媒体查询不适用于 iPhone 和 iPad

    media在以下情况下查询不起作用iPhone 5 和 iPad 4 操作系统 我用过以下CSS用于针对不同屏幕设计每个操作系统和设备 我明确检查了我的 iPad 和 iPhone 的宽度和高度 并基于此只有我保留了媒体查询 这有效fine
  • 在 Google 风格的 Python 文档字符串中“写入”?

    在 Google 风格的 Python 文档字符串中 可以指定Args Returns Raises如下 This is an example of Google style Args param1 This is the first pa
  • Magento - 数据库修复工具 - 添加丢失外键问题

    我最近按照此链接运行了数据库修复工具 http www magentocommerce com wiki 1 installation and configuration db repair tool 在说明的底部 它说 添加了缺少的外键或
  • 无法在 .NET 4.5 MVC 应用程序上实现 JSNLog

    Issue 我正在尝试在 MVC 应用程序中使用 JSNLog 目标框架 NET 4 5 我正进入 状态 当前上下文中不存在 JSN 日志 error 我尝试安装JSNLog 2 28 0 但它显示 无法安装包 JSNLog 2 28 0
  • 为什么 Microsoft Visual C# 2008 Express Edition 调试器会随机退出?

    我正在 Microsoft Visual C 2008 Express Edition 中编写多线程 Windows 应用程序 最近 调试器表现得很奇怪 当我使用 F10 单步执行代码行时 有时它会像继续命令 F5 一样解释我的单步执行 F
  • 二维数组邻接算法

    我有一个像这样的二维数组 0 1 0 0 1 1 0 1 0 1 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 如果我们提取所有 1 的坐标 我们会得到 height width 1 2 1 5 2 1 所以现在我想找到由相邻
  • const 方法使用引用修改对象

    下面的代码调用了一个const方法将引用传递给成员 然后对其进行修改 include
  • 断言 HTTP 状态代码为 200 而不是 500 失败

    我正在尝试对某个请求的 HTTP 状态代码进行功能测试200 not 500 我正在使用 Symfony2 代码如下 public function testIndex client static createClient crawler
  • Xamarin 形成 4 shell 导航,参数复杂

    我正在将带有 Prism 的 xamarin forms 3 x 应用程序迁移到带有 shell 导航的 Forms 4 我是否必须创建自定义解决方案才能将复杂参数传递到新页面 或者 Xamarin 有一些内置功能可以接收字符串参数以外的参
  • 在 AD 服务器上使用 winldap.h 进行 LDAP 搜索

    我正在尝试进行 LDAP 搜索 但它在我的 Active Directory 测试服务器上不起作用 我使用这段代码 include
  • DataTable.Load() 抛出错误:表达式中未定义函数“CountWeekDays”

    我正在使用 Access 数据库并尝试加载 DataTable 对象 但收到了错误 我的查询在标准访问模块中调用名为 CountWeekDays 的公共函数 当通过 Access 本身运行时 会返回正确的结果 为什么在通过 NET 应用程序
  • 为什么这个 JavaScript 调用不会破坏“同源策略”

    我正在使用 jQuery 显示外部 JavaScript 文件 同源策略 没有被破坏的原因是因为它不是 AJAX 请求吗 http jsfiddle net m7q3H 52 小提琴代码 HTML 这里绝对没问题哦 您可以从任何您想要的地方