// ==UserScript== // @name miyoushe token sender // @namespace http://tampermonkey.net/ // @version 0.1 // @description send miyoushe cookies to yunzai-web // @author 117503445 // @match https://www.miyoushe.com/* // @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw== // @grant GM_xmlhttpRequest // @grant GM_cookie // @license GNU/GPL V3 // @downloadURL https://update.greasyfork.icu/scripts/465204/miyoushe%20token%20sender.user.js // @updateURL https://update.greasyfork.icu/scripts/465204/miyoushe%20token%20sender.meta.js // ==/UserScript== (function () { 'use strict'; const host = "https://example.yunzai-web.com" // Basic Auth 的用户名 / 密码, 为空则不使用 Basic Auth const username = "user1" const password = "pass1" var button = document.createElement("button"); button.innerHTML = "Send Cookie To Yunzai-Web"; button.className = "my-button"; var style = document.createAttribute("style"); button.setAttributeNode(style); button.style.position = "fixed"; button.style.top = "80px"; button.style.right = "20px"; document.body.appendChild(button); function log(msg) { console.log(`[miyoushe token] ${msg}`) } function error_alert(msg) { msg = `[miyoushe token] meeting error: ${msg}` console.error(msg); alert(msg); } button.addEventListener("click", function () { GM_cookie.list({}, function (cookies, error) { if (!error) { let cookieStr = ""; log(`get cookies: ${JSON.stringify(cookies)}`) cookies.forEach(cookie => { cookieStr += `${cookie.name}=${cookie.value}; `; }); log(`cookieMsg: ${cookieStr}`) var data = { // prompt: document.cookie prompt: cookieStr }; let headers = { 'Content-Type': 'application/json', } if (username) { let authorization = btoa(`${username}:${password}`) headers.Authorization = `Basic ${authorization}` } GM_xmlhttpRequest({ method: 'POST', url: `${host}/api/chat-process`, headers: headers, data: JSON.stringify(data), onload(xhr) { log(xhr.responseText) alert(`[miyoushe token] Yunzai-Web 返回: \n ${xhr.responseText}`) } }); } else { error_alert(error); } }); }); })();