Jelajahi Sumber

[edit][chrome cookie]

zhangwei 2 tahun lalu
induk
melakukan
22028c4d36

+ 2 - 9
src/entry/background.js

@@ -25,8 +25,7 @@ import {
     checkShowPublishDialog
 } from "@/logic/background/twitter";
 import Report from "@/log-center/log"
-import { PingPong, httpNetWork } from "@/logic/background/help";
-import { commonFetch } from '@/http/fetch'
+import { PingPong, httpNetWork, httpContentToBack } from "@/logic/background/help";
 import { appVersionCode } from '@/http/configAPI.js'
 import { getChromeStorage, setChromeStorage } from '@/uilts/chromeExtension.js'
 
@@ -190,13 +189,7 @@ function onMessageMethod(req, sender, sendResponse) {
                     httpNetWork(req.funcName, req.data, sender)
                     break
                 case 'HTTP_CONTENT_TO_BACK':
-                    commonFetch(req.data)
-                    .then((response) => {
-                        chrome.tabs.sendMessage(sender.tab.id, { actionType: 'HTTP_BACK_TO_CONTENT', data: response, callback_id: req.callback_id });
-                    })
-                    .catch(() => {
-                        chrome.tabs.sendMessage(sender.tab.id, { actionType: 'HTTP_BACK_TO_CONTENT', data: null, callback_id: req.callback_id });
-                    })
+                    httpContentToBack(req, sender)
                     break
                 case 'CONTENT_TWITTER_SHORT_LINK':
                     req.arr_url.forEach(item => {

+ 0 - 1
src/entry/content.js

@@ -148,7 +148,6 @@ chrome.runtime.onMessage.addListener((req, sender, sendResponse) => {
             setPopupConfByPopupPage();
             break
         case 'IFREME_TAB_GROUP_SET_IFRAME_HEIGHT':
-            console.log('IFREME_TAB_GROUP_SET_IFRAME_HEIGHT', req)
             setTabGroupIframeStyle(req.data);
             break
         case 'IFREME_TAB_GROUP_CONTENT_GET_NAV_TOP':

+ 2 - 1
src/logic/background/fetch/twitter.js

@@ -125,4 +125,5 @@ export async function fetchGetAllUnReadNotices(params = {}) {
         url: '/notice/getAllUnReadNotices',
         params
     })
-}
+}
+

+ 11 - 1
src/logic/background/help.js

@@ -27,9 +27,19 @@ export const setContentMessage = (obj) => {
     chrome.tabs.query({}, (tabs = []) => {
         if (tabs.length) {
             tabs = tabs.filter((item) => { return item.active && item.selected && item.highlighted }) || []
-            tabs.forEach((item)=>{
+            tabs.forEach((item) => {
                 chrome.tabs.sendMessage(item.id, obj);
             })
         }
     })
+}
+
+export const httpContentToBack = (req, sender) => {
+    commonFetch(req.data)
+        .then((response) => {
+            chrome.tabs.sendMessage(sender.tab.id, { actionType: 'HTTP_BACK_TO_CONTENT', data: response, callback_id: req.callback_id });
+        })
+        .catch(() => {
+            chrome.tabs.sendMessage(sender.tab.id, { actionType: 'HTTP_BACK_TO_CONTENT', data: null, callback_id: req.callback_id });
+        })
 }

+ 30 - 49
src/uilts/chromeExtension.js

@@ -1,6 +1,7 @@
 import { pageUrl } from "@/http/configAPI.js"
 import { exp } from "mathjs"
 import { guid } from "@/uilts/help";
+import { consoleSandbox } from "_@sentry_utils@7.5.1@@sentry/utils";
 export const LANDING_PAGE = {
     name: 'received_log',
     url: pageUrl
@@ -12,10 +13,14 @@ export const LANDING_PAGE_MID = {
 }
 
 export function setChromeStorage(params, callback) {
-    if (callback) {
-        chrome.storage.local.set(params, callback)
-    } else {
-        chrome.storage.local.set(params)
+    try {
+        if (callback) {
+            chrome.storage.local.set(params, callback)
+        } else {
+            chrome.storage.local.set(params)
+        }
+    } catch (error) {
+        console.error(error)
     }
 }
 
@@ -44,6 +49,13 @@ export function getChromeStorage(key = '', callback) {
     });
 }
 
+// export function chromeSendMessage() {
+//     try {
+//         // chrome.runtime.sendMessage
+//     } catch {
+//     }
+// }
+
 export function setChromeCookie({
     name,
     url
@@ -56,53 +68,22 @@ export function setChromeCookie({
     })
 }
 
-export function getChromeCookie({
-    name,
-    url
-}, callback) {
-    chrome.cookies.getAll(
-        {
-            name: name || '',
-            url: url || ''
-        }, (e = []) => {
-            let _str = '[]'
-            if (e.length > 0) {
-                _str = e[0].value
-            }
-            let _arr = JSON.parse(decodeURIComponent(_str)) || []
-            callback(_arr)
-        }
-    )
-}
-
-// 累加ChromeCookie
-export function concatChromeCookie({ name, url }, value_obj) {
-    chrome.cookies.getAll(
-        {
-            name: name || '',
-            url: url || ''
-        }, (e = []) => {
-            let _str = '[]'
-            if (e.length > 0) {
-                _str = e[0].value
+export function getChromeCookie({ name = '', url = '' }, callback) {
+    try {
+        chrome.cookies.getAll({ name, url }, (res = []) => {
+            let _str = ''
+            if (Array.isArray(res) && res.length) {
+                _str = res[0].value
             }
-            let _arr = JSON.parse(decodeURIComponent(_str)) || []
-            _arr = _arr.concat(value_obj)
-
-            // 删除cookies
-            chrome.cookies.remove(LANDING_PAGE, () => {
-                chrome.cookies.set({
-                    expirationDate: new Date().getTime() / 10,
-                    name: name,
-                    url: url,
-                    value: encodeURIComponent(JSON.stringify(_arr)) || ''
-                }, (e) => {
-                    console.log(e)
-                })
+            if (_str) {
+                callback(JSON.parse(decodeURIComponent(_str)))
+            } else {
+                callback(null)
             }
-            )
-        }
-    )
+        })
+    } catch (error) {
+        console.error('catch',error)
+    }
 }
 
 export function removeChromeCookie(params, cb) {