问题描述:
商品描述过长时,无法调取支付接口,并且无报错显示
可以通过检测长度 去判断长度是否超出限制,经检测,产品的body 字节数长度 为120左右,并没有超出规定的128个字节长度, 但仍无法调取支付,so,实际项目中,最好保证商品描述的字节数小于100字节,这样保险些。。。
附上js检测字节数长度的代码 :
String.prototype.getBytesLength = function() {
var totalLength = 0;
var charCode;
for (var i = 0; i < this.length; i++) {
charCode = this.charCodeAt(i);
if (charCode < 0x007f) {
totalLength++;
} else if ((0x0080 <= charCode) && (charCode <= 0x07ff)) {
totalLength += 2;
} else if ((0x0800 <= charCode) && (charCode <= 0xffff)) {
totalLength += 3;
} else{
totalLength += 4;
}
}
return totalLength;
}
var str="三●八女神节疯狂活动来袭三●八女神节疯狂活动来袭三●八女神节疯狂活动来袭";
alert("字符数"+str.length+" ,字节数"+str.getBytesLength());
// php
// $zhStr = 'hello world!';
// echo strlen($zhStr);