Python用requests访问微信小程序security.msgSecCheck的api从而实现敏感词过滤并避坑47001

新做的一个小程序需要接入敏感词过滤,因为微信已经提供了这样子的接口服务,所以直接按照微信小程序官方说明进行接入:https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/sec-check/security.msgSecCheck.html 。但是接入的过程发现了两个很奇葩的问题。
一个是参数格式不合法:{‘errcode’: 47001, ‘errmsg’: ‘data format error rid: xxx’};
一个是解决了参数不合法的问题,所有的敏感词返回的结果全是返回OK,达不到过滤敏感词的目的;
通过API 文档我们知道
1、需要传入headers明确表示 post 的数据类型
2、需要将 post 数据转换为 json 格式
在摸索了一段时间之后,终于知道跟 python 使用的 requeset 版本有关。这里小结记录一下:

   params = {
       "content": content
   }
   headers = {
       "Content-Type": "application/json"
   }
   dataString = json.dumps(params, ensure_ascii=False)
   # 发送 POST 请求
   # 如果 requests 使用的是 2.28.2,则使用这种方式
   #resp = requests.post(post_url, data=dataString.encode("utf-8").decode("latin1"), headers=headers)
   # 如果 requests 使用的是 2.30.0,则使用这种方式
   resp = requests.post(post_url, data=dataString.encode("utf-8"), headers=headers)
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值