uni-app 使用sendSms短信服务收到的短信中部分中文变成“?”

uni-app 使用sendSms短信服务收到的短信中部分中文变成“?”

产品分类:
uniCloud/腾讯云

示例代码:

模板为:

【】订单 ${_id} 租客:${name} 电话 ${mobile} ⽤⻋时间(取还⻋时间)${time} 租期 ${duration} 位置 取:${submit_address} 还:${back_address} ⻋型 ${type} ⾦额 ${price} 元 状态 ${status}

请求为:

try {  
    let res = await uniCloud.sendSms({  
        appid: '',  
        smsKey: '',  
        smsSecret: '',  
        phone: '',  
        templateId: '13198',  
        data: {  
            _id: _id,  
            name: cancel_user.data[0].realname_auth.real_name,  
            mobile: cancel_user.data[0].mobile,  
            time: get_order.data[0].submit_time + '至' + get_order.data[0].back_time,  
            duration: get_order.data[0].duration,  
            submit_address: get_order.data[0].submit_address,  
            back_address: get_order.data[0].back_address,  
            type: cancel_car.data[0].brand + cancel_car.data[0].type,  
            price: get_order.data[0].total_fee,  
            status: '已取消'  
        }  
    })  
} catch (err) {  
    // 调用失败  
    console.log(err.errCode)  
    console.log(err.errMsg)  
    return {  
        code: err.errCode,  
        msg: err.errMsg  
    }  
}

操作步骤:

发送短信有时候会变,有时候不会变

预期结果:

短信内容的中文正常显示

实际结果:

收到的短信中部分中文变成“?”

bug描述:

使用sendSms短信服务收到的短信中部分中文变成“?”,且这个中文不是短信中的变量而是模板中的文字。


更多关于uni-app 使用sendSms短信服务收到的短信中部分中文变成“?”的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

看这情况应该是跟你上传的参数的格式有关,我这边联系下运营商查下具体原因

更多关于uni-app 使用sendSms短信服务收到的短信中部分中文变成“?”的实战教程也可以访问 https://www.itying.com/category-93-b0.html


原因是您模板里面的’车‘和’金‘两个字的格式有问题,您仔细跟其它字对比下就能看出区别,现已帮您重新编辑了下模板,应该没这个问题了,有空可以再测试下!

【】订单 ${_id} 租客:${name} 电话 ${mobile} ⽤⻋(车)时间(取还⻋(车)时间)${time} 租期 ${duration} 位置 取:${submit_address} 还:${back_address} ⻋(车)型 ${type} ⾦(金)额 ${price} 元 状态 ${status}
这样对比下更直观点,模板中的字体带了特殊格式的话很容易出现识别不了的问题!

好的,十分感谢

这个问题通常是由于短信编码问题导致的。在短信发送中,中文字符需要使用正确的编码格式才能正常显示。

主要原因:

  1. 短信服务商对中文字符的支持问题
  2. 编码格式不匹配,特别是当短信内容包含中英文混合时

解决方案:

  1. 检查短信模板编码

    • 确保在腾讯云短信控制台中,模板内容使用的是UTF-8编码
    • 模板中的中文符号建议使用全角字符
  2. 修改模板内容: 将模板中的特殊符号替换为标准字符:

    【】订单 ${_id} 租客:${name} 电话 ${mobile} 用车时间(取还车时间)${time} 租期 ${duration} 位置 取:${submit_address} 还:${back_address} 车型 ${type} 金额 ${price} 元 状态 ${status}
回到顶部