gpt4 book ai didi

c# - 将 JSON 数据发布到 Microsoft Graph API Azure 函数

转载 作者:行者123 更新时间:2023-11-30 22:57:30 25 4
gpt4 key购买 nike

我正在尝试使用 Azure 函数通过其 ID 转发一封 Outlook 电子邮件。

var url = "https://graph.microsoft.com/v1.0/users('<blah>')/messages/" + ID + "/forward";
var content = new StringContent(JsonConvert.SerializeObject(data), Encoding.UTF8, "application/json");
var response = await client.PostAsJsonAsync(url, content);
log.Info(response.Content.ReadAsStringAsync().Result);

我得到的结果是 The value of the parameter 'ToRecipients' is empty. Specify 'ToRecipients' either in the message object or in the action.

我传入的数据变量是 {"message":{"ToRecipients":[{"emailAddress":{"address":"<blah>"}}]}} .

我做错了什么?如何成功发布数据 JSON 对象?我觉得我已经尝试了所有可以在网上找到的示例,但我没有任何运气。

仅供引用, token 已附加到 header ,我只是不显示该部分。

最佳答案

您似乎对要发送的数据进行双重序列化。

首先当你手动序列化

...JsonConvert.SerializeObject(data)...

第二次调用 PostAsJsonAsync

client.PostAsJsonAsync(url, content);

这会在发布之前将提供的对象序列化为 JSON。

如果调用 PostAsJsonAsync 则无需您手动创建内容

//...

var url = "https://graph.microsoft.com/v1.0/users('<blah>')/messages/" + ID + "/forward";
var response = await client.PostAsJsonAsync(url, data);
var result = await response.Content.ReadAsStringAsync();
log.Info(result);

//...

关于c# - 将 JSON 数据发布到 Microsoft Graph API Azure 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53587456/

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