我正在开发一个python脚本(2.7.x),它试图通过tyk网关连接到第三方api。end api期望请求头中有一个auth令牌,tyk也要求它自己的auth令牌出现在请求头中。
现在我面临的问题是:
当我试图通过tyk向第三方应用程序提出请求时,应用程序没有识别标头中传递的令牌。通过调试,我发现tyk没有将身份验证头传递给应用程序。
我正在使用下面的代码来发出请求
request.post("https://myurl.com",
data={"data": data_a},
headers={"Authorization": "Basic <TYK_TOKEN>, Bearer <APP_TOKEN> })我尝试过的事情:
请提出解决办法。
谢谢
预先
发布于 2019-03-14 11:53:27
泰克来的莱昂尼德。
因此,基本上您的上游受auth令牌保护,您自己的API也受令牌保护。
如果第三方API有一个静态api密钥,则可以将其作为全局头嵌入到所有请求中:

如果您有一个针对不同用户的动态第三方键,则可以将其嵌入到键元数据中,例如"upstream_api_key“字段,并添加具有动态值的全局标头:"$tyk_meta.upstream_api_key”。

如果您的用户需要传递此令牌,并且需要将其转发到上游,那么Tyk和upstream身份验证应该在不同的HTTP报头中进行。
希望能帮上忙!
https://stackoverflow.com/questions/55161085
复制相似问题