我有一个表单,它有一些输入字段。一些输入字段具有json字符串作为值,如
[{"actionItems":"1","actions":"Go To Home","articleLink":""},
{"actionItems":"2","actions":"Rollback","articleLink":""}]
但当我提交这个请求时,请求在azure WAF上被阻止,并给出403。而其他没有json字符串作为值的表单则成功提交。有人能提出解决办法吗。
我认为WAF过滤请求的原因是因为它检测到JSON负载,而请求的Content-Type
不是application/json
。
(这里有完整的规则列表。据我所见,这样的场景可以匹配多个规则。我的猜测是920120、920 121和92 341(
您可以:
URLEncode
您的<input>
中的数据- 添加自定义规则以禁用您要
POST
访问的URL的WAF - 全局禁用影响此特定情况的某些规则
- 使用JavaScript以编程方式发出请求,然后将
Content-Type
标头设置为application/json