使用 MetaWeblog API 修改博客
-
在设置启用 MetaWeblog 博客客户端访问。

-
生成访问令牌。
-
发送请求:
import axios from 'axios'; function escapeXml(str) { return str .replace(/&/g, '&') .replace(/</g, '<') .replace(/>/g, '>') .replace(/\r?\n/g, '
'); } async function main() { const title = "使用 MetaWeblog API 修改博客" const body = "(博客内容)" const description = escapeXml(body); const username = "undefined443"; const token = "0123456789ABCDEFGHIJKLMN" const url = `https://rpc.cnblogs.com/metaweblog/${username}`; const blog_id = 19039962 const data = `<?xml version="1.0"?> <methodCall> <methodName>metaWeblog.editPost</methodName> <params> <param><value><string>${blog_id}</string></value></param> <param><value><string>${username}</string></value></param> <param><value><string>${token}</string></value></param> <param> <value> <struct> <member> <name>description</name> <value><string>${description}</string></value> </member> <member> <name>title</name> <value><string>${title}</string></value> </member> <member> <name>categories</name> <value> <array><data><value><string>[Markdown]</string></value></data></array> </value> </member> </struct> </value> </param> <param><value><boolean>1</boolean></value></param> </params> </methodCall>`; const response = await axios.post(url, data, { headers: {'Content-Type': 'text/xml'}, }); console.log(response); } main().catch(console.error);
参考:

浙公网安备 33010602011771号