我们正在构建一个交互式应用程序,并在我们的主页选项卡上发布了一个包含一个按钮的视图。我们正在使用 .net 核心 Web API 来处理 Slack 事件。我们从应用配置中订阅了“app_home_opened”事件,并且在“请求 URL”处成功接收到该事件。
单击主页选项卡上的按钮后,我们应该在“请求 URL”处收到交互有效负载,但我们在 Slack 应用程序 UI 上看到错误代码 415。
请帮助我们找到解决方案。
我们正在构建一个交互式应用程序,并在我们的主页选项卡上发布了一个包含一个按钮的视图。我们正在使用 .net 核心 Web API 来处理 Slack 事件。我们从应用配置中订阅了“app_home_opened”事件,并且在“请求 URL”处成功接收到该事件。
单击主页选项卡上的按钮后,我们应该在“请求 URL”处收到交互有效负载,但我们在 Slack 应用程序 UI 上看到错误代码 415。
请帮助我们找到解决方案。
Slack UI 在发布请求正文中发布数据,但服务器端点给出状态代码 415。使用 StreamReader 读取正文数据,您的问题将得到解决。
string bodyStr = string.Empty;
// Read data from body
using (StreamReader reader
= new StreamReader(httpRequest.Body, Encoding.UTF8, true, Constants.BufferSize, true)) {
bodyStr = reader.ReadToEnd();
}
Slack UI 将数据发布为application/x-www-form-urlencoded
. 因此,当您尝试联系时,HttpContext.Request.Body
您会收到415 Unsupported Media Type Error。
尝试从HttpContext.Request.Form