$.ajax({ url: "http://192.168.5.187:9999/users", type: 'GET', // 请求方法,默认为 'GET' dataType: "json", // 预期服务器返回的数据类型,可以是 "json"、"xml"、"html" 等 success: function (data) { // 请求成功时的回调函数,data 是服务器返回的数据 console.log(data); console.log('请求开始。。。'); }, error: function (jqXHR, textStatus, errorThrown) { // 请求失败时的回调函数 console.error("请求失败:", textStatus, errorThrown); }, }); 使用ajax调用http接口,报了两个错错误: 第一个是: CORS(app, resources=r'/*') 或者 CORS(app) 或者 CORS(app, resources={r"/api/*": {"origins": "*"}}) 客户端在请求,跨域问题就解决了,据说浏览器插件也可以,自己没有尝试 第二个问题:如上代码,ajax请求的明明是http 经过浏览器却变成了https,查课很久,竟然是个很基础的问题: 接口一直报ssl错误: 一定是有某个地方将请求强制变成了https,检查后竟然是这里, 将这句注释掉,请求变正常了,一切OK,接口请求成功。 如果用ajax 请求的链接是 http://localhost 或者 http://127.0.0.1 则不会变成https。因为,这两种不走网卡,而 ip 和 域名会走网卡,所以会变成https。 注释:配置正确的自签名证书也能解决这个问题。 关联内容:https://www.24jq.com/article-1171-1.html URL请求相关拓展:https://www.24jq.com/article-1170-1.html |
GMT+8, 2024-11-21 18:21 , Processed in 0.065118 second(s), 19 queries , Gzip On.
Powered by Discuz! X3.5
© 2001-2024 Discuz! Team.