Skip to content

Commit

Permalink
Implements genAuthCookies
Browse files Browse the repository at this point in the history
  • Loading branch information
Mathieu2301 committed Aug 15, 2024
1 parent ff56269 commit 3c4c1c2
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 10 deletions.
9 changes: 5 additions & 4 deletions src/classes/PinePermManager.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
const axios = require('axios');
const { genAuthCookies } = require('../utils');

/**
* @typedef {Object} AuthorizationUser
Expand Down Expand Up @@ -50,7 +51,7 @@ class PinePermManager {
headers: {
origin: 'https://www.tradingview.com',
'Content-Type': 'application/x-www-form-urlencoded',
cookie: `sessionid=${this.sessionId};sessionid_sign=${this.signature};`,
cookie: genAuthCookies(this.sessionId, this.signature),
},
},
);
Expand Down Expand Up @@ -84,7 +85,7 @@ class PinePermManager {
headers: {
origin: 'https://www.tradingview.com',
'Content-Type': 'application/x-www-form-urlencoded',
cookie: `sessionid=${this.sessionId};sessionid_sign=${this.signature};`,
cookie: genAuthCookies(this.sessionId, this.signature),
},
},
);
Expand Down Expand Up @@ -118,7 +119,7 @@ class PinePermManager {
headers: {
origin: 'https://www.tradingview.com',
'Content-Type': 'application/x-www-form-urlencoded',
cookie: `sessionid=${this.sessionId};sessionid_sign=${this.signature};`,
cookie: genAuthCookies(this.sessionId, this.signature),
},
},
);
Expand All @@ -143,7 +144,7 @@ class PinePermManager {
headers: {
origin: 'https://www.tradingview.com',
'Content-Type': 'application/x-www-form-urlencoded',
cookie: `sessionid=${this.sessionId};sessionid_sign=${this.signature};`,
cookie: genAuthCookies(this.sessionId, this.signature),
},
},
);
Expand Down
11 changes: 5 additions & 6 deletions src/miscRequests.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ const os = require('os');
const axios = require('axios');

const PineIndicator = require('./classes/PineIndicator');
const { genAuthCookies } = require('./utils');

const validateStatus = (status) => status < 500;

Expand Down Expand Up @@ -279,7 +280,7 @@ module.exports = {
`https://pine-facade.tradingview.com/pine-facade/translate/${indicID}/${version}`,
{
headers: {
cookie: `${session ? `sessionid=${session};` : ''}${signature ? `sessionid_sign=${signature};` : ''}`,
cookie: genAuthCookies(session, signature),
},
validateStatus,
},
Expand Down Expand Up @@ -429,7 +430,7 @@ module.exports = {
async getUser(session, signature = '', location = 'https://www.tradingview.com/') {
const { data } = await axios.get(location, {
headers: {
cookie: `sessionid=${session}${signature ? `;sessionid_sign=${signature};` : ''}`,
cookie: genAuthCookies(session, signature),
},
validateStatus,
});
Expand Down Expand Up @@ -471,7 +472,7 @@ module.exports = {
'https://pine-facade.tradingview.com/pine-facade/list',
{
headers: {
cookie: `sessionid=${session}${signature ? `;sessionid_sign=${signature};` : ''}`,
cookie: genAuthCookies(session, signature),
},
params: {
filter: 'saved',
Expand Down Expand Up @@ -529,9 +530,7 @@ module.exports = {
'https://www.tradingview.com/chart-token',
{
headers: {
cookie: session
? `sessionid=${session}${signature ? `;sessionid_sign=${signature};` : ''}`
: '',
cookie: genAuthCookies(session, signature),
},
params: {
image_url: layout,
Expand Down
6 changes: 6 additions & 0 deletions src/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,10 @@ module.exports = {
for (let i = 0; i < 12; i += 1) r += c.charAt(Math.floor(Math.random() * c.length));
return `${type}_${r}`;
},

genAuthCookies(sessionId = '', signature = '') {
if (!sessionId) return '';
if (!signature) return `sessionid=${sessionId}`;
return `sessionid=${sessionId};sessionid_sign=${signature}`;
},
};

0 comments on commit 3c4c1c2

Please sign in to comment.