当前位置: 首页 > 知识库问答 >
问题:

angularJS ajax调用失败403,但jQuery ajax调用可用于跨站点templateUrl加载。[副本]

强志学
2023-03-14

为了测试AngularJS,我从http://AngularJS.org/home页面上的“wire up a backend”示例中提取了以下代码。当视图是本地的时,一切都按预期工作,但当我将视图移动到另一个URL时,我得到的是403。请参阅此处的jsbin示例:

http://jsbin.com/olavok/1/edit

选项...403(禁止)Angular.min.js:99 XMLHttpRequest无法加载....access-control-allow-origin不允许Origin http://jsbin.com。

然而,jQuery工作得很好。就在同一个jsbin中,我添加了一个jQuery ajax调用,我们可以在日志中看到jQuery的成功。如果查看结果,您会看到jQuery提供了视图。

有什么想法如何得到角发挥不错的十字网站?我读到angular正在为DOM使用“jQuery light”。有没有一种方法可以让angular返回到Ajax使用jQuery?

共有1个答案

窦夜洛
2023-03-14

它的设计似乎是:http://docs.angularjs.org/api/ng.$http

阅读 跨站点请求伪造(XSRF)保护一节。

我刚刚注意到403是从选项动词中返回的,而不是get。jQuery之所以能工作,是因为它只是得到了,但Angular的$HTTP似乎遵循了规则:

AngularJS对跨源资源执行OPTIONS HTTP请求

 类似资料:
  • 我正在编写一些代码,以获得一个派生线程来从C调用静态Java方法。 如果放置在来自Java的本机调用中,而不是来自附加了JNIEnv的线程,则调用该方法的位可以正常工作。 我设置了一个JavaVM*如下: 这确实会被调用。 然后生成另一个线程,并从该线程执行以下操作: attachMoney tThread返回0。 GetStaticmethod虽然爆炸与以下错误: 我只是不知道我做了什么来打乱它

  • 我在新EKS群集上安装了aws负载平衡器控制器(版本v1.21.5-EKS-bc4871b)。 我根据本指南安装https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.3/deploy/installation/一步一步地,但当我尝试部署入口对象时,我会遇到我在标题中提到的错误。我试着像github一样解决这里的问题htt

  • 有人能帮我解决这个错误吗? 我把ADS放在我的项目中,当我尝试将我的项目构建到Android时,我得到了这个错误。 但是,如果我将ADS脱机,那么错误就会消失。 命令调用失败:Gradle 构建失败。C:/Program Files/Java/jdk1.8.0_45\bin\java.exe -classpath “E:\unity 5\Editor\Data\PlaybackEngines\An

  • 获取错误: 混合内容:“HTTPS:xxx”处的页面是通过HTTPS加载的,但请求的XMLHttpRequestendpoint“http://127.0.0.1/xxx”不安全。此请求已被阻止;必须通过HTTPS提供内容。 而且 未捕获得NetworkError:无法对“XMLHttpRequest”执行“Send”:无法加载“http://127.0.0.1/xxx”. 两周前,我可以成功运行

  • 有人能解释为什么VeraCode认为使用作为公共属性是一个坏主意,并提出一个很好的缓解意见吗? 代码(JavaScript): 攻击矢量:名称 描述: ,对name()的调用包含跨站点脚本(XSS)漏洞。该应用程序使用不受信任的输入填充HTTP响应,从而允许攻击者嵌入恶意内容(如Javascript代码),这些内容将在受害者浏览器的上下文中执行。XSS漏洞通常被用来窃取或操纵cookie、修改内容

  • 当我调用一个返回void的异步方法时,它是否与用task.run方法调用它时相同?我这样问是因为在FileSystemWatcher的文档中,它们提到了以下内容。 保持您的事件处理代码尽可能短。 在阅读了您的答案和评论后,我将代码改为这样。 谢谢你的时间和帮助,我真的很感激。