Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何从Google App Engine中触发HTTP云功能?_Python_Google App Engine_Google Cloud Platform_Google Cloud Functions_Google Cloud Iam - Fatal编程技术网

Python 如何从Google App Engine中触发HTTP云功能?

Python 如何从Google App Engine中触发HTTP云功能?,python,google-app-engine,google-cloud-platform,google-cloud-functions,google-cloud-iam,Python,Google App Engine,Google Cloud Platform,Google Cloud Functions,Google Cloud Iam,我在googleappengine标准环境Python中有一个Flask应用程序,还有一个带有HTTP触发器的云函数,它接受一个包含文件URL的JSON主体。CF在该URL下载文件,然后将其保存到GCS存储桶中。GAE服务帐户具有云函数调用者权限,但当在我的GAE代码中使用urlfetch.fetch()触发CF时,除非我使CF触发器可由任何人调用,否则应用引擎代码会收到403禁止的错误 如何在Python中成功地从GAE调用/触发CF?我想答案是这样的: 将GAE服务帐户上的IAM权限设置为{

我在googleappengine标准环境Python中有一个Flask应用程序,还有一个带有HTTP触发器的云函数,它接受一个包含文件URL的JSON主体。CF在该URL下载文件,然后将其保存到GCS存储桶中。GAE服务帐户具有云函数调用者权限,但当在我的GAE代码中使用
urlfetch.fetch()
触发CF时,除非我使CF触发器可由任何人调用,否则应用引擎代码会收到
403禁止的
错误

如何在Python中成功地从GAE调用/触发CF?我想答案是这样的:

  • 将GAE服务帐户上的IAM权限设置为{在此处启发我}
  • urlfetch.fetch()中添加身份验证头
  • 使CF可以从任何地方触发,但硬编码一些密钥,以便CF代码本身处理身份验证
    您应该能够使用与的节相同的模式。

    您应该能够使用与的节相同的模式。

    在调用受IAP授权保护的云函数时,您需要添加HTTP
    授权:承载[IDENTITY\u TOKEN]
    头。您需要添加HTTP
    授权:承载[IDENTITY_TOKEN]
    调用受IAP授权保护的云函数时的标头。