You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在HTTP请求负载中正确发送带变音符号的重音字符?

解决API发送特殊重音字符时显示Unicode转义的问题

你的问题出在json.dumps()的默认行为上——它会自动把非ASCII字符转换成\uXXXX格式的Unicode转义序列。要让Mock API直接收到带重音的原始字符,只需修改json.dumps()的参数:

在调用json.dumps()时添加ensure_ascii=False参数,同时保持encode("utf-8")的编码步骤(符合JSON的UTF-8编码要求)。

修改后的代码如下:

import string
import http.client
import datetime
import json

def apiSendFarmacia(idatencion,articulo,deviceid):
    now = datetime.datetime.now()
    conn = http.client.HTTPSConnection("apimocha.com")
    # 添加ensure_ascii=False参数
    payload = json.dumps({
      "idatencion": idatencion,
      "articulo": articulo,
      "timestamp": str(now),
      "deviceId": deviceid
      
    }, ensure_ascii=False).encode("utf-8")  # 关键修改处
    headers = {
      'Content-Type': 'application/json'
    }
    conn.request("POST"
                ,"/xxxx/api2"
                , payload
                , headers)
    res = conn.getresponse()
    httpcode = res.status
    data = res.read()
    return httpcode

再次调用apiSendFarmacia(2222,"solución",2222)时,Mock API收到的JSON负载里就会显示原始的ó字符,而非\u00f3。

内容的提问来源于stack exchange,提问作者Andres Mora

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 06:40:19