通过api改变标题

时间:2017-07-24 16:50:10

标签: api twitch http-status-code-410

我有一个小小的聊天机器人,我想现在做一个你可以改变流标题的功能。 我的功能正是这样看的:

public changeTitle = (new_title: string, callback: any): void => {
    let t = this;
    let request = require('request');
    request.get("https://api.twitch.tv/kraken/channels/" + this.settings.current_channel + "?client_id="+this.settings.clientId, { json: true }, function (err, res) {
        if (!err && res.statusCode === 200) {
            let current_title = res.body.status;
            console.log(current_title);
            let request2 = require('request');
            let options = {
                url: "https://api.twitch.tv/kraken/channels/"+t.settings.current_channel+"?channel[status]="+current_title+new_title,
                headers: {
                    "Authorization": "OAuth "+t.settings.clientId,
                    "Accept": "application/vnd.twitchtv.v2+json"
                }
            };
            request2.put(options, (error: Error, response: any, body: any): void => {
                console.log("Title changed?");
            });
        }
    });
};
在console.log(current_title)中的

我可以看到当前的流标题。 在console.log("标题改变了?")之后没有任何事情发生。 我收到错误410 GONE。所以我不再支持改变标题的方法。 有人可以告诉我如何更改标题吗?

提前致谢:)

1 个答案:

答案 0 :(得分:0)

这似乎由Update Channel

涵盖

具体而言,而不是channel[status]仅使用status作为查询参数。

let options = {
            url: "https://api.twitch.tv/kraken/channels/"+t.settings.current_channel+"?status="+new_title,
            headers: {
                "Authorization": "OAuth "+t.settings.clientId,
                "Accept": "application/vnd.twitchtv.v2+json"
            }

您还需要channel_editor范围才能在指定频道上使用此功能。