将以下 Paypal curl 命令转换为 axios?

2024-03-01

如何将此 paypal curl 命令转换为 Axios?

curl -v https://api.sandbox.paypal.com/v1/oauth2/token \
-H "Accept: application/json" \
-H "Accept-Language: en_US" \
-u "client_id:secret" \
-d "grant_type=client_credentials"

我在 vue 中使用 vueAxios,因此“this.".

this.axios.post('https://api.sandbox.paypal.com/v1/oauth2/token',
    {'Accept': "application/json", 'Accept-Language': "en_US", 
    'XXXXXX': 'XXXXX', // my paypal client ID and client secret 
    'grant_type':'client_credentials'}
    )
    .then( response => {
        console.log("Response is: ", response);
    })
    .catch( error => {
        console.log("Error is :", error);
});

我收到此错误:

 Error is : Error: Request failed with status code 401
    at createError (createError.js?16d0:16)
    at settle (settle.js?db52:18)
    at XMLHttpRequest.handleLoad (xhr.js?ec6c:77)

我也尝试过这个(这似乎更好,但我仍然收到 400 错误):

 this.axios({ 
    method: 'POST', 
    url: 'https://api.sandbox.paypal.com/v1/oauth2/token', 
    headers: {
            'Accept': 'application/json',
            'Accept-Language': 'en_US',
            'Content-Type':'application/x-www-form-urlencoded'
    },
    auth: {
            username: '<XXXX My paypal client ID>',
            password: '<XXXX My paypal secret>'
    } ,
    data: {
        grant_type: 'client_credentials'
    },
})
.then(function(response) {console.log(response);})
.catch(function(response) {console.log(response);});

更新 - 在一些帮助形成评论后,我尝试了以下代码,并且 paypal 出现了 CORS 错误问题(我已经安装了 npm 包“cors”,并且 cors 错误仍然存​​在(本地和部署时))。

这回答了我的问题,但是,如这里所述 https://stackoverflow.com/questions/36828320/paypal-access-control-allow-origin,看来 Paypal 不允许直接来自浏览器的请求。

this.axios({
    withCredentials: true,
    url: 'https://api.sandbox.paypal.com/v1/oauth2/token',
    method: 'post',
    headers: { 
        'Accept': 'application/json', 
        'Accept-Language': 'en_US',
        'Content-Type':'application/x-www-form-urlencoded',
        'Access-Control-Allow-Origin': '*',
        },
    data: { 'grant_type':'client_credentials' },
    auth: {
        username: 'XXXXXXXX',
        password: 'XXXXXXXX'
    }
})

相关文档:

CORS: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS

VueAxios:https://www.npmjs.com/package/vue-axios https://www.npmjs.com/package/vue-axios

贝宝开发者:https://developer.paypal.com/docs/api/overview/#make-your-first-call https://developer.paypal.com/docs/api/overview/#make-your-first-call


这是一个相当古老的线程。我在使用 Node.js 时也遇到了困难。 我的解决方案如下。希望这可以帮助 :

const res = await axios(
    {
        method: 'post',
        url: 'https://api.sandbox.paypal.com/v1/oauth2/token',
        data: 'grant_type=client_credentials', // => this is mandatory x-www-form-urlencoded. DO NOT USE json format for this
        headers: {
            'Accept': 'application/json',
            'Content-Type': 'application/x-www-form-urlencoded',// => needed to handle data parameter
            'Accept-Language': 'en_US',
        },
        auth: {
            username: clientId,
            password: clientSecret
        },

    });

console.log(JSON.stringify(res.data)); // => be sure to handle res.data, otherwise you will have a circular json error. The token you need is res.data.access_token.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将以下 Paypal curl 命令转换为 axios? 的相关文章

随机推荐

  • 有人可以解释 BCrypt 如何验证哈希吗?

    我正在使用 C 和 BCrypt Net 来哈希我的密码 例如 string salt BCrypt Net BCrypt GenerateSalt 6 var hashedPassword BCrypt Net BCrypt HashPa
  • 字符串数组是可变的吗?

    我想知道Java中的字符串数组是否是可变的 我知道字符串是不可变的 但是字符串数组怎么样 如果我有一个字符串数组 并更改内容 是否会创建一个新的字符串对象 或者实际值会改变吗 提前致谢 The Strings 包含在String 确实是不可
  • 从 React Native 中解析的对象数组中渲染图像源

    我正在构建一个反应本机应用程序 它假设使用一些 元数据 对象作为源 我正在解析数组中的每个对象并为每个对象返回一个 JSX 布局item 我遇到的唯一问题是如何提供图像来源 因为我将它们存储在本地并且需要require link 他们 我的
  • React Router - 刷新后保持在同一页面

    我正在学习反应 我有一个包含 4 个子页面的页面 我使用 React Router 来浏览这些页面 除了重新加载页面之外 一切正常 当我从页面 主页 转到 关于 或其他页面时 这是可以的 但是当我刷新页面时 它会再次渲染页面 关于 一秒钟
  • 浏览器关闭时的通知

    我有一个 chrome 扩展 当用户访问特定页面时 它会向用户发送通知 我希望在浏览器关闭或在后台运行时发送通知 类似于智能手机 任何想法或提示都会很棒 在 Chrome 扩展中 您可以使用 2 个工具 chrome gcm API htt
  • 如何在 C# 中获取目录大小(目录中的文件)?

    我希望能够使用 C 获取本地目录之一的大小 我试图避免以下情况 伪代码 尽管在最坏的情况下我将不得不解决这个问题 int GetSize Directory int Size 0 foreach File in Directory File
  • 缩放到点和从点缩放

    我正在尝试将 DisplayObject 缩放到某个点 我认为这很容易 但我现在花了一天时间试图弄清楚 基本上我认为这个should工作 强调应该 newPoint is the point being centered There is
  • 如何将音频文件从 iPhone 文档文件夹上传到服务器

    我正在录制语音并将其保存到iphone文件夹中 但我想将其上传到服务器 那么如何执行此操作 NSString path NSString stringWithFormat Documents wav NSHomeDirectory pati
  • 在 ASP 和 VB 中动态添加文本文件到 DDL

    我希望通过动态更新来更新我的 DDL 功能之一 这样如果用户添加更多文件 下拉列表就会选择它 目前我的下拉列表是从VB代码后面拉出来的 如下所示 Public Sub DDL SelectedIndexChanged sender As O
  • 在 C# 中创建 .csv 文件

    好吧 我想用 C 创建一个 csv 文件 我环顾四周 发现很多人都在使用 system IO memorystream 和 system io streamwriter 问题是这样的 我有一个网络应用程序 我想让用户能够导出到 Excel
  • [Python]为什么电子邮件 pdf 附件在 Outlook/Thunderbird 上不显示,而在 Gmail 上却显示? (从Python环境发送)

    我刚刚加入了一个项目 并一直试图弄清楚为什么某些电子邮件在 Gmail 上按应有的方式显示 但是当我使用 Thunderbird 或 Outlook 等客户端打开时 附加的 PDF 现在会显示 作为附加细节 如果我将邮件从 Thunderb
  • 九月=“;”语句破坏了 XSL 生成的 CSV 文件中的 utf8 BOM

    我目前正在使用 XSLT 开发 CSV 导出 在我的例子中 CSV 文件将与 Excel 一起使用 99 因此我必须考虑 Excel 的行为 我的第一个问题是 csv 中的德语特殊字符 即使 CSV 编码是 UTF8 Excel 也无法正确
  • 弃用:ember-cli-babel 5.x 已弃用。无法获得余烬工作

    我正在尝试运行我的 ember 项目 它说我的圣经已经过时了 我更新了所有内容 但没有任何效果 有人可以告诉我应该如何修复它吗 这是我的 npm 返回错误的样子 DEPRECATION ember cli babel 5 x has bee
  • 如何让gcc显示调用的内部命令?

    是否有可能让 gcc MinGW Windows 显示所有调用的命令行 Example gcc o test exe test c desiredOption 应该输出类似这样的内容 cc1 o intermediate s test c
  • 如何让 VirtualEnv TensorFlow 在 PyCharm 中工作?

    所以我通过这里的主要响应将tensorflow安装到我的mac上 https stackoverflow com a 33691154 6095482 https stackoverflow com a 33691154 6095482 这
  • Java:强大的代码移动性 如何?

    有谁知道如何使用Java代码移动性强 http en wikipedia org wiki Code mobility 你以前做过吗 这就是我试图实现的目标 假设我们有 2 个通过网络通信的独立 Java 应用程序 应用程序 A 和应用程序
  • 如何在 RetroFit 中使用 Gson 转换器?

    我正在制作一个用于教育目的的简单 RetroFit 应用程序 并使用 IntelliJ IDEA 作为我的 IDE 我已经正确导入了 Retrofit 库 至少我认为我已经导入了 但我无法获取 Gson Converter 包 我安装了来自
  • Android Studio 上的 Gradle 构建非常非常慢

    这是我的配置 MBP 2015 8GB 内存 固态硬盘 安卓工作室2 2 3 平均而言 构建持续 7 8 分钟 有时 10 12 分钟 我已经尝试了网上能找到的所有方法 但似乎都不起作用 自定义虚拟机选项 Xms1024m Xmx8192m
  • 如何从 .NET 更新基于 Azure 应用程序网关路径的规则 UrlPathMap

    在 Azure 门户上 我可以设置基于路径的规则 这些规则具有一些默认设置和子规则列表 UrlPathMap 每个子规则都有必须配置的名称 路径 后端池和 HTTP 设置 正如我所看到的 我可以通过 Azure 门户轻松更新此地图 我希望能
  • 将以下 Paypal curl 命令转换为 axios?

    如何将此 paypal curl 命令转换为 Axios curl v https api sandbox paypal com v1 oauth2 token H Accept application json H Accept Lang