Initial commit
This commit is contained in:
26
wwwroot/core/tiktok/tikTokPoller.js
Normal file
26
wwwroot/core/tiktok/tikTokPoller.js
Normal file
@@ -0,0 +1,26 @@
|
||||
import {BasePoller} from "../base/basePoller.js";
|
||||
import {Logger} from "../logging/logger.js";
|
||||
|
||||
export class TiktokPoller extends BasePoller {
|
||||
|
||||
constructor({userToken : userToken, endpoint : endpoint}) {
|
||||
super();
|
||||
this.endpoint = endpoint;
|
||||
this.userToken = userToken;
|
||||
}
|
||||
|
||||
async pollOnce() {
|
||||
try {
|
||||
|
||||
//{
|
||||
// 'Content-Type': 'application/json',
|
||||
// 'Authorization': 'Bearer ' + this.userToken,
|
||||
//}
|
||||
//let data = super.doPostRequest(this.endpoint, this.userToken, {"max_count" : 1});
|
||||
|
||||
} catch (err) {
|
||||
Logger.error("Unbale to fetch TikTok content", err)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
38
wwwroot/core/tiktok/tiktokTokenManager.js
Normal file
38
wwwroot/core/tiktok/tiktokTokenManager.js
Normal file
@@ -0,0 +1,38 @@
|
||||
import {BaseTokenManager} from "../base/baseTokenManager.js";
|
||||
import {Requester} from "../utils/requester.js";
|
||||
|
||||
export class TikTokTokenManager extends BaseTokenManager {
|
||||
|
||||
constructor({filepath, clientKey, clientSecret}) {
|
||||
super(filepath);
|
||||
this.clientKey = clientKey;
|
||||
this.clientSecret = clientSecret;
|
||||
}
|
||||
|
||||
async renew() {
|
||||
let url = `https://www.tiktok.com/v2/auth/authorize?client_key=${this.clientKey}&response_type=code&scope=user.info.basic,video.list&redirect_uri=https://the-jailor.naaturel.be/oauth&state=SOME_RANDOM_STRING`
|
||||
let response = await Requester.doGetRequest(url);
|
||||
|
||||
let userCode = response.code; //Might not be correct, please update
|
||||
|
||||
url = "https://open.tiktokapis.com/v2/oauth/token/";
|
||||
let headers = {
|
||||
"Content-Type": "application/x-www-form-urlencoded",
|
||||
"Cache-Control": "no-cache"
|
||||
}
|
||||
|
||||
let params = {
|
||||
"client_key": this.clientKey,
|
||||
"client_secret": this.clientSecret,
|
||||
"code": userCode,
|
||||
"grant_type": "authorization_code",
|
||||
"redirect_uri": "https://the-jailor.naaturel.be/oauth"
|
||||
}
|
||||
|
||||
let data = await Requester.doPostRequest(url, headers, params);
|
||||
let userId = data.open_id;
|
||||
let token = data.access_token;
|
||||
|
||||
//Update token registry
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user