gpt4 book ai didi

moqui - 如果 nginx 正在代理 moqui 应用程序,则 header 中带有 api_key 的 Rest API 调用失败

转载 作者:行者123 更新时间:2023-12-05 09:20:19 24 4
gpt4 key购买 nike

在8080端口运行moqui,直接通过api访问

curl -X GET -H "api_key: {apiKey}" http://localhost:8080/rest/s1/example/examples/TEST2

它返回示例 TEST2 的 json 结果。

但是当nginx放在mqoui应用的前面时。代理http://localhost:8080 , 然后 api 访问失败并返回 403

{
"errorCode": 403,
"errors": "User null is not authorized for View on REST Path /example/examples/{exampleId}\nCurrent artifact info: [name:'/example/examples/{exampleId}', type:'AT_REST_PATH', action:'AUTHZA_VIEW', required: true, granted:false, user:'null', authz:'null', authAction:'null', inheritable:false, runningTime:0]\nCurrent artifact stack:\n[name:'/example/examples', type:'AT_REST_PATH', action:'AUTHZA_VIEW', required: false, granted:null, user:'null', authz:'null', authAction:'null', inheritable:false, runningTime:0]\n[name:'/example', type:'AT_REST_PATH', action:'AUTHZA_VIEW', required: false, granted:null, user:'null', authz:'null', authAction:'null', inheritable:false, runningTime:0]\n[name:'component://webroot/screen/webroot/rest.xml/s1', type:'AT_XML_SCREEN_TRANS', action:'AUTHZA_VIEW', required: false, granted:null, user:'null', authz:'null', authAction:'null', inheritable:false, runningTime:0]\n[name:'component://webroot/screen/webroot/rest.xml', type:'AT_XML_SCREEN', action:'AUTHZA_VIEW', required: false, granted:null, user:'null', authz:'null', authAction:'null', inheritable:false, runningTime:0]\n[name:'component://webroot/screen/webroot.xml', type:'AT_XML_SCREEN', action:'AUTHZA_VIEW', required: false, granted:null, user:'null', authz:'null', authAction:'null', inheritable:false, runningTime:0]"
}

webFacade 似乎没有通过 api_key 成功初始化 userFacade,因为在错误中 user 为 null。

最佳答案

默认情况下,Nginx 不允许在 header 名称中使用下划线 _。 Moqui api 使用包含下划线的 api_key 或 login_key,因此 api_key 或 login_key header 不会传递到后端 moqui 应用程序。

在nginx中启用header名称中的下划线很简单,添加

underscores_in_headers on;

在 nginx 配置中的 http 或服务器指令中。

关于moqui - 如果 nginx 正在代理 moqui 应用程序,则 header 中带有 api_key 的 Rest API 调用失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37938957/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com