Azure / Azure/azure-functions-durable-python

Calling Signal entity HTTP API fails with content-type=application/json

未关闭
#346 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
bug fixed-in-v2 P2
主要语言
Python
星标
157
派生
70
平均合并
2 天 10 小时
30 天内合并 PR
2

描述

### Context
In the [http api documentation for signalling a durable entity](https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-http-api#signal-entity) it is stated that the request content (payload) should be JSON-formatted, implying that the Content-Type should be application/json.
Calling the API using this Content-Type=applicaton/json will throw an error in the get_input() function of the Durable entity context with the error "the JSON object must be str, bytes or bytearray, not dict"

### How to reproduce
Call the API using Content-Type = application/json

### Workaround
Call the API using Content-Type = text/plain

贡献指南

打开贡献指南

调研方向

首先跟踪 Signal entity HTTP API 的处理流程,直到 Durable entity context 的 get_input() 函数,并使用已记录的 Signal entity 请求和报告的 Content-Type 行为作为复现用例。验证使用 application/json 时 JSON payload 能够被接受,同时保留现有的 text/plain workaround 行为;如果周边测试提供了合适的入口,则为这两种请求形式添加或更新覆盖测试。

由索引模型根据 Issue 内容生成。

评估

技术栈
python
领域
api, backend
Issue 类型
缺陷
难度
3/5
预计耗时
1-2 天
活跃度
冷清
描述清晰度
基本清楚
新手友好度
64/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。