Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用netbanxapi_Javascript_Jquery_Ajax_Netbanx Api - Fatal编程技术网

Javascript 使用netbanxapi

Javascript 使用netbanxapi,javascript,jquery,ajax,netbanx-api,Javascript,Jquery,Ajax,Netbanx Api,我试图使用Netbanx API,但我总是得到{“错误”:{“代码”:401,“消息”:“未授权”}我不知道我做错了什么 var url = "https://api.test.netbanx.com/hosted/v1/orders"; $.ajax({ url: url, headers: { "Authorization": "Basic " + btoa("devcentre4157:B-qa2-0-54b6431d-302c021451aabe02869ba8

我试图使用Netbanx API,但我总是得到{“错误”:{“代码”:401,“消息”:“未授权”}我不知道我做错了什么

var url = "https://api.test.netbanx.com/hosted/v1/orders";
$.ajax({
    url: url,
    headers: { 
    "Authorization": "Basic " + btoa("devcentre4157:B-qa2-0-54b6431d-302c021451aabe02869ba82a4a4253d8b2a170d7950d228b021448948677e24be8180f945f1af2b583676c353b9f") 
    },
    type: 'POST',
    dataType: 'jsonp',
    contentType: 'application/json',
    data: "{merchantRefNum:'89983943',currencyCode:'CAD',totalAmount:'10'}",
    success: function (data) {
        alert(JSON.stringify(data));
    },
    error: function (err) {
        console.log(err);
    }
});

我在中验证了您的代码并收到了401

凭证是好的,我做了curl请求并返回了数据

curl -X POST -H "Content-Type: application/json" \
  -u devcentre4157:B-qa2-0-54b6431d-302c021451aabe02869ba82a4a4253d8b2a170d7950d228b021448948677e24be8180f945f1af2b583676c353b9f \
     https://api.test.netbanx.com/hosted/v1/orders \
  -d '{
          "merchantRefNum" : "89983943",
          "currencyCode"   : "CAD",
          "totalAmount"    : 10
      }'  

{"currencyCode":"CAD","id":"27HBQC4JI28QISA1LM","link":[{"rel":"hosted_payment","uri":"https://pay.test.netbanx.com/hosted/v1/payment/53616c7465645f5f9d3670f3f61d1664e3c0db218618a55369145e7577df013ab0691c526e56a445"},{"rel":"self","uri":"https://devcentre4157:B-qa2-0-54b6431d-302c021451aabe02869ba82a4a4253d8b2a170d7950d228b021448948677e24be8180f945f1af2b583676c353b9f@api.test.netbanx.com/hosted/v1/orders/27HBQC4JI28QISA1LM"},{"rel":"resend_callback","uri":"https://devcentre4157:B-qa2-0-54b6431d-302c021451aabe02869ba82a4a4253d8b2a170d7950d228b021448948677e24be8180f945f1af2b583676c353b9f@api.test.netbanx.com/hosted/v1/orders/27HBQC4JI28QISA1LM/resend_callback"}],"merchantRefNum":"89983943","mode":"live","totalAmount":10,"type":"order"}
我使用DHC chrome插件进行了一次检查——它也能正常工作。所以我很确定您的JavaScript示例存在跨域问题。Netbanx不允许对API进行跨域请求


通常在这些情况下,问题在于密钥的编码方式。复制和粘贴时,开头或结尾可能有空格。这些凭证看起来确实有效

是netbanx/netbanxapi,如果这是问题的主题,为什么不标记它?需要1500信誉才能添加新标签是的,我知道错误代码是这么说的,但我的凭证很好。我已经从developer.optimalpayments.com的“我的帐户”页面中获取了它们。你是对的-凭证是可以的,我做了curl,这是工作。可能是一些跨站点的参考问题?从客户端javascript执行这样的请求不是一个好主意-您的凭据是打开的。