You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
509 B
JavaScript
20 lines
509 B
JavaScript
"use strict";
|
|
|
|
const Promise = require("bluebird");
|
|
|
|
const assureResponse = require("../shared/assure-response");
|
|
const matchOrFail = require("../shared/match-or-fail");
|
|
|
|
module.exports = function ({ session }) {
|
|
return function getCSRFToken() {
|
|
return Promise.try(() => {
|
|
return session.get("https://lcsc.com/products");
|
|
}).then((response) => {
|
|
assureResponse(response);
|
|
|
|
let [ extractedToken ] = matchOrFail(/'X-CSRF-TOKEN': '([^']+)'/, response.body);
|
|
return extractedToken;
|
|
});
|
|
};
|
|
};
|