如何在 python 中的 azure 函数中使用 req.get_body() 以及目的是什么?

How to use req.get_body() in azure function in python and what is purpose?

我是 Azure 函数的新手。我无法理解 azure 函数中 req.get_body() 的目的是什么?我们可以使用 req.get_body() 在本地主机 api(e.g-http://localhost:7071/api/HttpTrigger1) 中传递二进制图像内容吗?如果是,请告诉我如何在本地主机中传递二进制图像内容。 我正在尝试使用 name = req.params.get('name')。但问题是,如果图片内容很小,我可以通过,但是如果图片内容很大,就会显示错误。

请帮帮我

是的,正如您在问题中提到的,“Get”方法请求只能使用较小的请求参数。如果你的图片内容比较大,我们最好使用“Post”的方式来请求函数,将二进制放在“Post”请求的请求体中。除此之外,“Post”方法比“Get”方法请求更安全。

在本地测试时,只需要使用“Postman”即可。下载“Postman”并按照下面的截图进行操作:

req.get_body() 的目的是从发出的 post 请求中检索数据。

例如,如果您在 http://localhost:7071/api/HttpTrigger 向您的 azure 函数发出获取请求,并且您编写 { "message" :" Success" }

如果您在函数中做了类似的事情:

import json

import azure.functions as func


def main(req: func.HttpRequest) -> func.HttpResponse:
    logging.info('Python HTTP trigger function processed a request.')

  
    message = req.get_body()
   
   
 
    return func.HttpResponse(f"Received the message: {message}", status_code=200)

您将收到由 Postman 或类似人员发送的消息“SUCCESS”作为回复。