1、hbuilder内置浏览器不存在跨域问题,如果是普通web页面,可以使用hubilder内置浏览器调试
2、但,微信公众号h5端只能用【微信开发者工具-公众号网页项目】调试,所以这里我们可以配置proxy代理来解决跨域问题
- 首先需要在调用的接口前面统一配置一个基础前缀,例如在config.js中设置
basePrefixUrl: '/dev-api'
,之后在request请求的接口前面拼接上basePrefixUrl
(设置基础地址前缀的目的是为了proxy能识别到携带这个前缀的请求,识别到之后会自动转发代理到你配置的目标服务器上) - 在manifest.json中配置proxy信息
"h5" : { "devServer" : { "proxy" : { "/dev-api" : { // 这个字段名需与你配置的basePrefixUrl一致,系统识别到带有/dev-api请求的地址时,会在前面拼接上代理服务器地址 "target" : "https://xxx", // 代理服务器域名或IP地址 "changeOrigin" : true, // 允许跨域 "pathRewrite" : { "^/dev-api" : "" // 重写地址,如果实际接口中是不带/dev-api,需要将这个前缀置空,因为这个前缀只是为了识别用,识别完之后就没用了 } } } }