更换获取方式方法
This commit is contained in:
@@ -5,18 +5,27 @@ import store from '@/store'
|
||||
* @param message 消息
|
||||
*/
|
||||
export function sendChromeAPIMessage(message) {
|
||||
message.type = 'api'
|
||||
message.url = "https://kuajing.pinduoduo.com/" + message.url;
|
||||
if (message.needMallId) {
|
||||
// 如果参数中没有携带MallId,则从state中获取
|
||||
if (!message.mallId) {
|
||||
message.mallId = store.state.mallId;
|
||||
}
|
||||
message.type = 'api'
|
||||
message.url = "https://kuajing.pinduoduo.com/" + message.url;
|
||||
message.anti = false
|
||||
if (message.needMallId) {
|
||||
// 如果参数中没有携带MallId,则从state中获取
|
||||
if (!message.mallId) {
|
||||
message.mallId = store.state.mallId;
|
||||
}
|
||||
return new Promise((resolve) => {
|
||||
// @ts-ignore
|
||||
chrome.runtime.sendMessage(message, resolve)
|
||||
})
|
||||
}
|
||||
|
||||
return new Promise((resolve) => {
|
||||
// @ts-ignore
|
||||
chrome.runtime.sendMessage(message, resolve)
|
||||
})
|
||||
}
|
||||
|
||||
export const getAntiContent = message => {
|
||||
message.type = "genAnti"
|
||||
return new Promise((resolve) => {
|
||||
chrome.runtime.sendMessage(message, resolve)
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -24,9 +33,9 @@ export function sendChromeAPIMessage(message) {
|
||||
* @param message 消息
|
||||
*/
|
||||
export function sendChromeNotification(message) {
|
||||
message.type = 'notify'
|
||||
return new Promise((resolve) => {
|
||||
// @ts-ignore
|
||||
chrome.runtime.sendMessage(message, resolve)
|
||||
})
|
||||
}
|
||||
message.type = 'notify'
|
||||
return new Promise((resolve) => {
|
||||
// @ts-ignore
|
||||
chrome.runtime.sendMessage(message, resolve)
|
||||
})
|
||||
}
|
||||
|
||||
@@ -413,7 +413,3 @@ const genAnti = function () {
|
||||
}()
|
||||
return S()
|
||||
}
|
||||
|
||||
Promise.resolve(genAnti()).then(r => {
|
||||
// console.log(r.toString())
|
||||
})
|
||||
@@ -1,21 +1,20 @@
|
||||
/**
|
||||
利用chrome的fetch来避免跨域
|
||||
**/
|
||||
import {genAnti} from "@/entry/genAnti";
|
||||
import {getAntiContent} from "@/api/chromeApi";
|
||||
|
||||
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
|
||||
if (request.type == 'api') {
|
||||
new Promise((resolve, reject) => {
|
||||
new Promise((resolve) => {
|
||||
let headers = {};
|
||||
|
||||
if (request.needMallId) {
|
||||
headers.Mallid = request.mallId;
|
||||
}
|
||||
if (request.anti) {
|
||||
headers["Anti-Content"] = getAntiContent()
|
||||
}
|
||||
headers['Content-Type'] = 'application/json';
|
||||
headers.cookie = getCookie();
|
||||
// Promise.resolve(genAnti()).then(r => {
|
||||
// headers["Anti-Content"] = r
|
||||
// })
|
||||
Promise.resolve().then(() => fetch(request.url, {
|
||||
'headers': headers,
|
||||
'method': 'POST',
|
||||
@@ -26,11 +25,7 @@ chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
|
||||
})).then((res) => {
|
||||
resolve(res.json());
|
||||
});
|
||||
}).then((res) => {
|
||||
sendResponse(res);
|
||||
});
|
||||
} else if (request.type == 'init') {
|
||||
fetch(request.url,{headers:{cookie: getCookie()}}).then(res => sendResponse(res.text()));
|
||||
}).then(sendResponse);
|
||||
} else if (request.type == 'notify') {
|
||||
chrome.notifications.create(
|
||||
"" + Math.random(), {
|
||||
|
||||
@@ -1 +1,10 @@
|
||||
console.log('hello world content todo something~')
|
||||
console.log('hello world content todo something~')
|
||||
if (window["webpackJsonp"] && location.href.indexOf("kuajing.pinduoduo.com") > -1) {
|
||||
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
|
||||
if (request.type == 'genAnti') {
|
||||
// window["webpackJsonp"]
|
||||
sendResponse("kubbo")
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ import ElementUI from 'element-ui'
|
||||
import '../assets/css/element-variables.scss'
|
||||
import instance from '../api'
|
||||
import utils from '../utils'
|
||||
import install from '../utils/install'
|
||||
import '../utils/install'
|
||||
import dayjs from 'dayjs'
|
||||
|
||||
Vue.use(ElementUI)
|
||||
|
||||
@@ -18,7 +18,10 @@
|
||||
],
|
||||
"permissions": [
|
||||
"cookies",
|
||||
"notifications"
|
||||
"notifications",
|
||||
"tabs",
|
||||
"scripting",
|
||||
"activeTab"
|
||||
],
|
||||
"content_scripts": [
|
||||
{
|
||||
|
||||
@@ -20,7 +20,6 @@ export default {
|
||||
this.$router.push('/login')
|
||||
} else {
|
||||
this.$store.dispatch('getUserInfo');
|
||||
this.getMainEntry()
|
||||
sendChromeAPIMessage({url: 'bg/quiet/api/mms/userInfo', needMallId: false, data: {}}).then((res) => {
|
||||
if (res.errorCode == 1000000) {
|
||||
if (res.result.companyList[0].malInfoList.length == 1) {
|
||||
@@ -48,11 +47,7 @@ export default {
|
||||
}
|
||||
},
|
||||
|
||||
methods: {
|
||||
async getMainEntry() {
|
||||
chrome.runtime.sendMessage({type: "init", url: this.$base + "main-entry"})
|
||||
}
|
||||
}
|
||||
methods: {}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user