Jwt WSO2-AM 3.2.0-确保您的API调用具有标头:testkey丢失

Jwt WSO2-AM 3.2.0-确保您的API调用具有标头:testkey丢失,jwt,wso2-am,Jwt,Wso2 Am,我在WSO2 AM中发布了一个API,现在,当我尝试通过curl测试API并传递令牌时,它显示了一个错误: 卷曲请求: curl -X GET "https://192.168.21.120:8243/ms-authorization/1.0.0/authorization/access-type/access-type" -H "accept: application/json" -H "Authorization: Bearer eyJ4N

我在WSO2 AM中发布了一个API,现在,当我尝试通过curl测试API并传递令牌时,它显示了一个错误:

卷曲请求:

curl -X GET "https://192.168.21.120:8243/ms-authorization/1.0.0/authorization/access-type/access-type" 
-H "accept: application/json" -H "Authorization: Bearer eyJ4NXQiOiJNell4TW1Ga09HWXdNV0kwWldObU5Er0m9eU..
-iNxXl0D9to5ptemrd42itirPDJiYJJ_FkSMKSfQ6m78X2fr-Tag" -k
答复:

{"fault":{"code":900902,"message":"Missing Credentials","description":"Authentication Error. Make sure your API invocation call has a header: testkey is missing"}}

为什么要在标头中包含“testkey”?

如果您试图使用Publisher测试控制台测试API,则需要将生成的访问令牌/测试密钥包含在带有标头的curl中
testkey

例如:


我刚刚启用了CORS配置,重新部署了API,一切正常:


您是否按照本文档中的说明设置了自定义身份验证标题?-不,我正在使用terminal进行测试,即使它要求提供testkey。如果您发布了API,使用应用程序订阅了API,并从该应用程序生成了令牌,则可以将其与授权标头一起使用来调用API。当API处于原型状态时,通过发布者控制台调用API时,通常使用测试密钥。两者都可以在终端中完成。您需要提供适当的标头。应用程序处于生产状态。我已尝试传递此标题
授权:承载人
。我已经通过console进行了测试,标题更改为
testkey:
。但现在情况并非如此。
curl -X GET "https://localhost:8243/napi/1.0/*" -H "accept: */*" -H "testkey: 032456ff-4764-4321-2348-e7ad1ac5t6g0" -k