【发布时间】:2019-09-17 17:16:33
【问题描述】:
到目前为止,我还没有找到使用 Google 脚本在 Blogger 中创建帖子的好代码。
在 API 控制台中,我获得了以下凭据:
- 客户 ID
- 客户端密码
- API 密钥
此外,库已添加到 Google 脚本中:
- OAuth2 库 → MswhXl8fVhTFUH_Q3UOJbXvxhMjh3Sh48
- Blogger 库 → M2CuWgtxF1cPLI9mdRG5_9sh00DPSBbB3
我尝试了一些代码,这是当前的:
function create_blog_post() {
var payload =
{
"kind": "blogger#post",
"blog": {
"id": "12345........" // YOUR_BLOG_ID
},
"title": "New post",
"content": "With content..."
};
var headers = {
"Authorization": "Bearer " + getService().getAccessToken(), // ← THIS IS WRONG
"X-HTTP-Method-Override": "PATCH"
};
var options =
{
"method" : "post",
"headers" : { "Authorization" : "Bearer" + getService().getAccessToken()},
"contentType" : "application/json",
"payload" : '{ "kind": "blogger#post", "blog": { "id": "12345........" }, "title": "New post", "content": "With content..." }'
};
try {
var result = UrlFetchApp.fetch(
"https://www.googleapis.com/blogger/v3/blogs/12345......../posts", options);
Logger.log(result);
} catch (e) {Logger.log(e);}
}
请用最简单的代码帮我解决这个问题。
【问题讨论】:
-
可以问一下
THIS IS WRONG的详细信息吗?如果您的脚本有更多问题,您能提供吗? -
标有 «THIS IS WRONG» 的行的错误消息如下: ReferenceError: "getService" is not defined。 (第 13 行,文件“crear_post_blog”)
-
感谢您的回复。从您的回复来看,这份文件有用吗? github.com/gsuitedevs/apps-script-oauth2
-
你需要使用urlfetch而不是gapi。 gapi 仅适用于客户端。在 urlfetch 标签中搜索关于向博主 api 发送授权标头的示例
标签: google-apps-script blogger urlfetch