• Thinkphp6 + uniapp框架,接口访问跨域问题


    Thinkphp6 + uniapp框架,接口访问跨域问题

    接口访问数据,常出现跨域问题。CORS(靠,热死了谐音读法),从而无法读取接口返回的数据。解决办法如下

    1.uniapp框架中manifest.json,配置proxy代理协议,让接口走代理

    h5" : {
            "sdkConfigs" : {
                "maps" : {
                    "qqmap" : {
                        "key" : "
                    }
                }
            },
            "optimization" : {
                "treeShaking" : {
                    "enable" : true
                }
            },
            "router" : {
                "mode" : "hash",
                "base" : "/h5/food/"
            },
            "devServer" : {
                "https" : false,
                "disableHostCheck": true,
                "proxy": {
                    "/api": {
                        "target": "https://www.baidu.com",
                        "changeOrigin": true,   
                        "secure": false,
                        "ws":false,
                        "pathRewrite":{"^/api":""}
                    }
                }
            },
            "title" : "智慧餐厅"
        }

    2.第二种方法通过Thinkphp6框架,后端解决跨域问题

    在根目录app目录下面的middleware.php中配置,运行跨域访问接口数据

    <?php
    // 全局中间件定义文件
    return [
        // 全局请求缓存
        // 	hinkmiddlewareCheckRequestCache::class,
        // 多语言加载
        // 	hinkmiddlewareLoadLangPack::class,
        // Session初始化
        	hinkmiddlewareSessionInit::class,
        //允许跨域请求
        	hinkmiddlewareAllowCrossDomain::class
    ];

    这样即可解决CORS的问题了

  • 相关阅读:
    面试题
    Struts2与Struts1的对比
    【转载】在Linux平台上安装和配置Ruby on Rails详解
    SVN总结
    Web.config文件例子详解
    Web.config文件简介
    在C#中应用哈希表(Hashtable)
    VS2005调试C++
    [Serializable]C#中的对象序列化
    ASP.NET下载文件(弹出打开保存文件对话框)
  • 原文地址:https://www.cnblogs.com/feimengv/p/15342545.html
Copyright © 2020-2023  润新知