cherrypy/jquery CORS 麻烦

2023-12-02

我有一个基于 Cherrypy 的简单 Python Web 服务器。其资源应提供API。服务器有以下代码来提供CORS:

def CORS():
    cherrypy.response.headers["Access-Control-Allow-Origin"] = "*"

if __name__ == "__main__":
    cherrypy.tools.CORS = cherrypy.Tool('before_finalize', CORS)
    cherrypy.quickstart(PyCachedAdmin(), config={'/': {'request.dispatch': cherrypy.dispatch.MethodDispatcher()}})

服务器运行在 localhost:8080 上。现在我有了一个 HTML 文件,可以在 localhost(默认端口 80)上使用,它加载 jquery 1.9。我打开浏览器控制台来尝试$.ajax向cherrypy 服务器执行任何AJAX 请求。我一直在尝试:

$.ajax({
  url:'http://localhost:8080/',
  type: "POST",
  dataType: "json",
  data: {command:"version"}
}).done(function(){
  console.log('hej');
});

and

$.ajax({
  url:'http://localhost:8080/',
  type: "POST",
  crossDomain: true,
  dataType: "jsonp",
  data: {command:"version"}
}).done(function(){
  console.log('hej');
});

and

$.support.cors = true

但没有任何作用。我要么XMLHttpRequest cannot load http://localhost:8080/. Origin http://localhost is not allowed by Access-Control-Allow-Origin. or GET http://localhost:8080/?callback=jQuery19102827550224028528_1382823727186&command=version&_=1382823727187 404 (Not Found)当使用 jsonp 时(奇怪的是它发送 GET 而不是 POST)。周围有一些类似的问题,我尝试过,这些是我的结果(仍然有问题)。

PS 服务器完全正常,因为所有curl 测试都通过了。跨域的东西出了问题。


您是否正在激活 CORS 工具?您可以通过装饰调用方法或在配置上设置它来使用该工具。

鉴于实施PyCachedAdmin没有表达这个问题,我可能猜测您可能没有启用该工具,为此您只需要更改配置字典并进行如下操作:

    cherrypy.quickstart(PyCachedAdmin(),
                        config={
                            '/': {
                               'request.dispatch':
                                    cherrypy.dispatch.MethodDispatcher(),
                               'tools.CORS.on': True}})

或者如果您正在使用的方法PyCacheAdmin已经装修或使用_cp_config不需要额外的配置,这个答案对您没有帮助。

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

cherrypy/jquery CORS 麻烦 的相关文章

随机推荐

  • 如何清除徽章号码同时保留通知中心

    I use UIApplication sharedApplication setApplicationIconBadgeNumber 0 清除徽章号码 它工作正常 但远程通知同时被删除 还有许多其他问题需要清除通知中心 但我不想清除它们
  • SQL 查询澄清

    我有两张桌子医生和计费 我希望查看治疗多名患者的医生的姓名 医生编号和总费用 doctor表列如下 doctorid dname 计费表列如下 billid patientid doctorid fees 我尝试了以下代码 但出现错误 指出
  • 如何在 Android/Linux 上构建 OpenSSL ?

    你好 我需要为 Android NDK r5b 构建 OpenSSL 库 今天将是我的 useles 战斗的第二天 这是我所做的简短列表 下载 https github com fries android external openssl
  • 扩展 HashMap 并仅同步 put

    我最近在我们的代码库中遇到一个类 它扩展了 HashMap 并同步了 put 方法 除了比使用 ConcurrentHashMap 效率低之外 扩展 HashMap 并仅同步 put K V 可能会出现什么样的问题 假设我们不关心 get
  • 如何ajax jsf 2输出链接

    我想制作一个可以在ajax上运行的网页 一切ajax 我的意思是 每当您单击链接 我指的是 来使用另一个链接中的数据更改某个 div 时 例如
  • 如何使用 Jersey JSON POJO 支持?

    我有一个对象 我想将其作为 RESTful 资源以 JSON 形式提供 我像这样打开了 Jersey 的 JSON POJO 支持 在 web xml 中
  • 比较两个枚举变量,无论它们的关联值如何

    考虑这个枚举 enum DataType case One data Int case Two value String Swift 具有模式匹配来将枚举与关联值进行比较 如下所示 let var1 DataType One data 12
  • img.onerror 似乎不适用于 IE8

    我正在尝试从网址加载图像来检查互联网连接 当没有互联网连接时 它应该显示一个 dojo 警告对话框 这适用于 Firefox 但不适用于 IE8 以下是代码片段 var img new Image img src userGuideUrl1
  • 您可以从扩展程序访问 chrome:// 页面吗?

    当你编写manifest json文件时 你必须指定matches用于您的内容脚本 这http and https工作正常 但如果我尝试包括chrome 或其任何变体 我收到错误消息 指出我正在尝试对我的应用程序使用无效的方案matches
  • 如何防止 Visual Basic 2012 中以下代码的 SQL 注入

    我对如何防止 SQL 注入感到困惑 我在网上查看过 我是使用存储过程 还是创建变量 我完全迷失了 Try connection Open we got here so our connection to the db is sound ch
  • Windows Phone 8 模拟器仅返回雷蒙德位置

    我正在使用以下代码 Geolocator myGeolocator new Geolocator DesiredAccuracy PositionAccuracy High Geoposition myGeoposition await m
  • WPF - 跨线程事件

    我的问题是我想使用新线程在画布中添加项目 所以我有多个方法 底部的示例 它们生成例如图像并设置一些属性 然后他们应该通过事件回调生成的思考 以下是我调用的为画布生成想法的线程的一部分 Here I create the event in t
  • 将表名作为参数传递给 SqlCommand 的问题

    这个问题的目标是避免SQL注入 我有查询 选择 插入 更新 删除 当我需要发送表名作为参数时 我该怎么做 我将非常感谢你的帮助 insertCommand CommandText update tableName set code code
  • jQuery 可选定制

    我有一个 jQuery 可供选择 如下所示 它实际上是一个有序列表 有序列表位于名为 myBorderDiv 的 div 内 当我按下 control 并将鼠标悬停在项目上时 所有项目都会出现不需要的效果 在 IE8 中 如下图所示 如何克
  • PHP $_SESSION 标头重定向后为空

    当我进行标头重定向时 我丢失了 SESSION 中的数据 当我使用调试器完成此操作时 我可以在 exit 之前看到 SESSION 中的所有数据 登录 php 确保您正在使用该功能session start 在 if 语句之前myaccou
  • Google 表格:根据第 1 行中的日期隐藏列

    我没有在 Excel 或 Google Sheets 中编写脚本的经验 因此我尝试扩展一下 看看是否有解决我的问题的方法 我们在厨房改造业务中使用 Google 表格制作每周日历 我们从左到右组织几周 并在这些栏中列出我们当前正在从事的工作
  • 如何解决机器人框架中测试自动化的 ssl 证书错误

    通过机器人框架运行自动化测试时 我的 Web 应用程序出现 ssl 证书错误 我尝试了下面带有不同镶边选项的代码 但没有一个在有或没有布尔值的情况下也能工作 list Create List unsafely treat insecure
  • 打印数组元素

    以下 C 程序的预期输出是打印数组元素 但实际运行时却并非如此 include
  • Python 中的梯形规则

    我正在尝试在 Python 2 7 2 中实现梯形规则 我写了以下函数 def trapezoidal f a b n h float b a n s 0 0 s h f a for i in range 1 n s 2 0 h f a i
  • cherrypy/jquery CORS 麻烦

    我有一个基于 Cherrypy 的简单 Python Web 服务器 其资源应提供API 服务器有以下代码来提供CORS def CORS cherrypy response headers Access Control Allow Ori