netsuite与首信易支付(v4.3)接口-CarlZeng

问题1 ,文档中提及了 URL参数是以http://开头的完整URL地址。 而netsuite中向外开放的可用的地址都是https://,难道首信就不支持?这个问题需要与首信确认。 已答复:支持,曾经只有发现一个https无法返回的案例。说明此问题不是主要问题。问题2,步骤一, 用户从客户中心中自己下了订单后,决定支付,于是到订单页面点’前往支付’按钮,系统要传递订单信息,到suitelet来读取…

问题1 ,文档中提及了 URL参数是以http://开头的完整URL地址。 而netsuite中向外开放的可用的地址都是https://,难道首信就不支持?这个问题需要与首信确认。 已答复:支持,曾经只有发现一个https无法返回的案例。说明此问题不是主要问题。

问题2,步骤一, 用户从客户中心中自己下了订单后,决定支付,于是到订单页面点’前往支付’按钮,系统要传递订单信息,到suitelet来读取订单的资料,并展示给客户(下方定有一个’确认支付’),内容大致如下:


商户编号
订单编号
收货人姓名
收货人地址
收货人电话
收货人邮编
订单总金额
订单产生日期
配货状态
订货人姓名
币种,0为人民币,1为美元
//支付动作完成后返回到该url,支付结果以GET方式发送
//订单数字指纹

function str2binlExpress(str) 是在md5.inc中定义的,也就是说验证的程序需要调用vbscript 这样netsuite支持吗?
javascript中只有Unicode转换没有ascii码转换,所以要用vbscript中的代码来实现…加了这段代码后,最好在页面中有脚本的地方都写清楚脚本语言,否则可能会出现错误。

解决:c=String.fromCharCode(65)
\—————————————————————

str.charCodeAt(x),表示将字符串str中的第x个字符转变成ASCII值
求ASCII转字符:javascript用String.fromCharCode(x);vbscript用chr(x)或chrw(x)
求字符转ASCII:javascript用??;vbscript用asc(‘字符’)

_chr_ Asc 这两个函数很难转的 ??碰到了Asc

function str2binlExpress(str)
result = “”
a = “”
b = 0
for i = 1 to len(str)

a = mid(str,i,1)
b = asc(a)

if b > -1 and b < 255 then result = result & b & "," end if if b<0 then result = result & int((b + 65536)/256) & "," result = result & (b and 255) & "," end if if(b > 255) then
result = result & int((b)/256) & “,”
result = result & (b and 255) & “,”
end if
next
str2binlExpress = result
end function

将被从vbscript转化为javascript 转化结果如下:

function str2binlExpress(str)
{
result = “”;
var a = “”;
var b = 0;
for( var i=0; i -1 && b < 255) result = result + b + "," ; if ( b<0 ) { result = result + parseInt( (parseInt(b) + 65536)/256 ) + ","; //result = result + int((b + 65536)/256) + ","; result = result + (b & 255) + "," ; } if( b > 255) {
result = result + parseInt( b/256 ) + “,”; //result = result + int((b)/256) + “,”;
result = result + (b & 255) + “,”;
}
}
var str2binlExpress = result;
//alert(‘str:’+str+’a:’+a+’b:’+b+’str2binlExpress:’+str2binlExpress);
return str2binlExpress;
}

英文状态下是ok的,询问易支付后得知,他们都使用gb2312来校验的,我需要做的就是发送时v\_rcvname涉及字符装换;接收时涉及 v\_pmode 和 v\_pstring的字符转化。

问题4:已确认发送成功,并且银行支付成功,但是没有取得实时的返回,那么原因已排出url是带119个字符并且有参数的原因,那么需要继续测试银行支付成功以后,银行给我中转值的情况。


评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注