javascript - 使用 Netbanx API

标签 javascript jquery ajax netbanx-api

我正在尝试使用 Netbanx API,但总是收到 {"error":{"code":401,"message":"Notauthorized"}} 我不知道我做错了什么。

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 进行跨域请求。

enter image description here

关于javascript - 使用 Netbanx API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32639260/

相关文章:

javascript - 多 AJAX 代码不起作用

jquery - 如何将图像拖放到容器中,然后根据拖入的内容更新容器?

javascript - 如何避免返回到用 HTML id 属性标记的上一个部分,而是转到上一个网站?

javascript - $(this)选择器问题jquery

javascript - 在 Ember.js 中处理 Action 参数

javascript - 使用 socket.io-mongodb-emitter 发出后关闭 mubsub 客户端

javascript - Node.js Socket.io 错误 : disconnect event is triggered after connect

javascript - 使用 jquery 指示选定的列表项

javascript - 从 ajax 页面调用页面触发事件的最佳实践

javascript - 除了长条件语句之外,是否有更 Eloquent 方法来比较三个或更多值