[英]Making sense of podbean-api
我正在尝试创建一个网站,从中获取我最喜欢的播客Podbean API 。
我以前使用过fetch
,但这些 API 的设置要容易得多,而且没有 auth 部分。 这就是我正在努力解决的问题。
所以这基本上是我以前用过的:
fetch('https://jsonplaceholder.typicode.com/todos/1')
.then(response => response.json())
.then(json => console.log(json))
据我了解,通过各种其他线程查看:
我需要使用我的client_id
和client_secret
发送获取请求以获取access_token
从那里开始,使用access_token
我可以获得访问权限,因此可以从播客对象中获取日期。
我将不胜感激如何处理授权部分的任何指导,如果我的某些思维过程完全错误,我会很明显地告诉我。
提前致谢!
好的,所以我知道这个问题已经超过 2 年了,但我仍然会分享我的解决方案,因为我一直在努力理解如何使用这个 API。 此解决方案仅适用于您是播客的所有者(或至少有权访问开发帐户)的情况。
API 的问题是,如果你不想使用 auth2(我仍然不确定它如何与 podbean 一起工作),你必须使用 POST 方法而不是 GET 来获取数据并提供参数(正文和标题)并使用HTTP 基本认证方案。 他们的文档仅在 php 中,但通过一些研究您可以了解他们在做什么,可以在此处找到适用于此解决方案的部分。
这是代码:
const fetch = require("node-fetch");
const btoa = require('btoa');
const client_id = 'Enter your client id';
const client_secret = 'Enter your client secret';
const uri = 'https://api.podbean.com/v1/oauth/token';
// Base 64 encode client_id and client_secret to use basic authentication scheme
const auth = "Basic " + btoa(client_id + ':' + client_secret);
// Set POST request params
const options = {
method: 'POST',
body: 'grant_type=client_credentials',
headers : {
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": auth
}
}
// Fetch
fetch(uri, options)
.then(res => res.json())
.then(data => console.log(data))
我希望这对将来尝试将此 API 与 javascript 结合使用的任何人有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.