• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > 带你搞懂uniapp跨域问题(实例详解)

带你搞懂uniapp跨域问题(实例详解)

作者:站长图库 字体:[增加 减小] 来源:互联网

站长图库向大家介绍了uniapp跨域问题等相关知识,希望对您有所帮助

本篇文章给大家带来了关于uniapp跨域的相关知识,其中介绍了为什么会有跨域问题,这是浏览器的一种安全保护机制,一起来看一下相关的问题吧,希望对大家有帮助。


带你搞懂uniapp跨域问题(实例详解)


为什么会有跨域问题?

由于浏览器的同源策略导致的,是浏览器的一种安全保护机制。
浏览器从一个域名的网页去请求另一个域名的资源时,协议、域名、端口 任一不同,都是跨域

解决uniapp的跨域问题有很多方式,下面总结一下常用的几种方式

1. 使用 jsonp,可在我们封装的网络通讯中添加

dataType:'jsonp'

总结:

但是此种方式仅支持 get 请求,post好像用不了。


2. 在uniapp根目录下的 manifest.json 添加

"h5": {    "devServer": {        "proxy": {            "/8888": {                "target": "https://www.baidu.com/api",                "changeOrigin": true,                "pathRewrite": {                    "^/8888": "/"                }            },            "/8800": {                "target": "https://www.taobao.com/api",                "changeOrigin": true,                "pathRewrite": {                    "^/8800": ""                }            }        }    }},

总结:

此种方式虽然没有其它方式灵活,但是 是最适用于uniapp的,毕竟是官方提供的配置文件。

具体参照:https://uniapp.dcloud.io/collocation/manifest?id=h5


3. uniapp根目录下新建文件 vue.config.js ,然后在里面添加

module.exports = {  devServer: {    proxy: {      '/dev': {        target: 'https://www.baidu.com/api',        changeOrigin: true,        pathRewrite: {          '^/dev': ''        }      }    },  }}

总结:

此种配置方式,可能会没用,因为 vue.config.js 是 vue3 才有的, vue2 配置 vue.config.js 是无效的。可以在 manifest.json 文件内通过 vueVersion 字段来查看 vue 版本。如下图:


带你搞懂uniapp跨域问题(实例详解)


具体参照:https://cli.vuejs.org/zh/config/#devserver-proxy

如果是 vue2 配置跨域,可参照 :https://blog.csdn.net/weixin_45679977/article/details/103004678


4. 解除Google浏览器的跨域限制

TASKKILL /F /IM chrome.exe
start chrome.exe --args --disable-web-security --user-data-dir
pause

总结:

记得重启浏览器

具体参照:https://blog.csdn.net/MisTTT/article/details/75976123


5. 其它方式

(1). 直接运行在 hbuilderx 的内置浏览器内,uniapp官方在内置浏览器内做过跨域处理

(2). 下载Google浏览器一个可支持跨域的拓展程序:https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi

具体可参照:https://ask.dcloud.net.cn/article/35267


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • PHP结合AJAX实现搜索提示功能
  • 浅谈如何在制作dedecms模板中进行一些SEO设置
  • 织梦最新版后台一键更新网站、更新文档HTML卡死的解决方法
  • Photoshop创建简洁绚丽的几何组合背景
  • 关键词meta标签Keywords优化详解
  • 百度统计升级屏蔽黑灰产信息功能
  • 聊聊Node.js + worker_threads如何实现多线程?(详解)
  • Photoshop制作银色质感的金属字教程
  • PHP危险函数禁用深入详解
  • 详解Composer+Git怎么创建 “服务类库”

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • 推荐六款移动端 UI 框架
    • ThinkPHP5把动态链接库赋给变量而导致的执行多条sql数据合并问题
    • DEDECMS如何设置搜索页热门搜索词
    • 搜索引擎优化中关键词的分类
    • WordPress子分类页面使用父分类页面模板
    • 在CSS中怎么给按钮添加背景图片(详解及实例)
    • 第三方下载苹果CMSV10系统的请注意后门WebShell
    • MySQL 日期加减函数汇总
    • vue.js如何实现可拖拽菜单
    • PHP实现长轮询消息实时推送功能代码实例讲解

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有