$.ajax请求问题?

const appid = "wx2200e7e4afe036de"
const secret = "45328e91154e8a8b11b21112d9869f03";

$.ajax({
  url: `https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=${appid}&secret=${secret}`,
  type: 'GET'
});

image.png

好像是跨域问题, 如何解决?
$.ajax可以配置跨域吗?

阅读 1.6k
2 个回答

通过前端代码是解决不了的,有几种解决方法:

  1. 如果是window,修改chrome启动配置,在启动命令后面追加 --disable-web-security --disable-gpu --user-data-dir=%LOCALAPPDATA%\Google\chromeTemp
  2. 如果可以修改后端配置,直接修改后端
  3. 自己用nodejs实现一个简单的代理服务器(有可用插件,网上应该有现成的代码)

确实是跨域问题,解决思路无非是两种:
1、后端服务器是你自己的,你自己设置允许跨域
看起来似乎你是在访问微信的api,总不能让小马哥专门允许你跨域吧哈哈哈,这条没戏了
2、使用代理服务器
跨域问题只存在浏览器和服务器之间,不存在服务器和服务器之间,一般我们自己开发前后端分离的项目的时候经常会遇到这种情况,比如是vue项目的话一般在配置文件里设置一个server假装是同源的代理服务器来解决这个问题,又或者使用nginx
涉及这种访问接口的,一般官方会有文档告诉你怎么访问的吧,比如会告诉你要带什么参数来通过他们那边的验证,建议照着开发者文档走就好了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题