接入到chromeApi当中
This commit is contained in:
		| @@ -2,6 +2,8 @@ | ||||
|  利用chrome的fetch来避免跨域 | ||||
|  **/ | ||||
|  | ||||
| import {getSign} from "@/api/aliExpress"; | ||||
|  | ||||
| /** | ||||
|  * 根据图片URL获取Blob对象 | ||||
|  * @param imageUrl | ||||
| @@ -23,6 +25,23 @@ function getImageBlob(imageUrl) { | ||||
|   }); | ||||
| } | ||||
|  | ||||
| /** | ||||
|  * 将cookie字符串转换为对象 | ||||
|  * @param cookieString | ||||
|  * @returns {{}} | ||||
|  */ | ||||
| function cookie2Obj(cookieString) { | ||||
|   const cookieArray = cookieString.split('; '); | ||||
|   const cookieObj = {}; | ||||
|  | ||||
|   for (let i = 0; i < cookieArray.length; i++) { | ||||
|     const [key, value] = cookieArray[i].split('='); | ||||
|     cookieObj[key] = value; | ||||
|   } | ||||
|  | ||||
|   return cookieObj; | ||||
| } | ||||
|  | ||||
| chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { | ||||
|   if (request.type == 'api') { | ||||
|     let headers = {}, data; | ||||
| @@ -111,8 +130,15 @@ chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { | ||||
|       let headers = {}; | ||||
|       headers['Content-Type'] = 'text/html'; | ||||
|       headers.cookie = getAliexpressCookie(); | ||||
|       Promise.resolve().then(() => fetch(request.url, { | ||||
|         'headers': headers, 'method': 'GET', 'referrerPolicy': 'no-referrer', 'credentials': 'include', 'mode': 'cors' | ||||
|       const {_m_h5_c, _m_h5_tk} = cookie2Obj(headers.cookie) | ||||
|       const {appKey, t, formData} = request | ||||
|       const sign = getSign(_m_h5_c || _m_h5_tk, appKey, t, formData) | ||||
|       const url = new URL(request.url) | ||||
|       let params = new URLSearchParams(url.search); | ||||
|       params.append('sign', sign) | ||||
|       url.search = params.toString() | ||||
|       Promise.resolve().then(() => fetch(url.toString(), { | ||||
|         'headers': headers, 'method': 'POST', 'referrerPolicy': 'no-referrer', 'credentials': 'include', 'mode': 'cors' | ||||
|       })).then((res) => { | ||||
|         // 创建了一个数据读取器 | ||||
|         const reader = res.body.getReader(); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user