-
Notifications
You must be signed in to change notification settings - Fork 83
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ParseError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON in "http://fanyi.youdao.com/openapi.do": <!DOCTYPE html> #35
Comments
查了下应该是代码里面的有道账号都是失效了 |
大佬会改么、我都看不懂这玩意怎么写的,我看有些翻译的插件可以配自己的有道key进去 |
@MrBugDou https://github.com/xudaolong/CodeVar/blob/master/src/config.js#L7 你查找文件 然后改下这里 或者自己去申请一个就行了哈 |
迟点我清理一下 |
@xudaolong 这个key是什么呀,我看有道的是这样的一个key,一个secret ![]() |
@MrBugDou http://fanyi.youdao.com/openapi?path=data-mode 很早以前的了,现在申请不了,要改造一波了 |
同遇到这个问题 |
A very handy tool. Good luck. |
好像有道翻译的 api 挂了 |
你们有空可以提个mr,最近比较忙 |
换新的api了,但返回的结构没怎么变,请求的地方要改下,新版api要收费了不过有体验金。我不太会js 有人有空不 |
我不会写这种项目,我看到有个翻译的workflow,支持多平台,用户自己设置API的方式使用,我觉得可以改成这样,但是我不知道怎么写,有没有大佬愿意参照这个改改的: |
是的,有道更换了api并且添加一些可以的内容,需要申请自己的key,我本地可以使用了,随后给提交一个PR |
以下配置建立在你已申请有道key,请自行查询相关申请流程: 第一步:打开codevar项目 'use strict'; const alfy = require('alfy'); function truncate(q){ module.exports = {
}; ` 第四步: 需要注意的是,appKey(应用ID)、key(应用秘钥)分别是你在有道需要申请的,然后分别配置其中 第五步: 需要你安装crypto-js,在当前项目目录下安装跟package.json文件同级别目录,如果安装下载crypto-js,请自行查询 |
我fork了一份,已经修复了,可以直接用这个版本
|
试了下,还是报错 |
抱歉,昨天上传的是xudaolong的安装包,我刚更新了安装包,再试试,配置方式可以参考我仓库里的readme |
大佬 牛逼 |
跑通了,谢谢大佬! |
强迫症受不了,格式化下代码 'use strict';
const alfy = require('alfy');
const sample = require('lodash.sample');
const CryptoJS = require('crypto-js');
function truncate(q){
var len = q.length;
if(len<=20) return q;
return q.substring(0, 10) + len + q.substring(len-10, len);
}
module.exports = {
youDaoApi: 'https://openapi.youdao.com/api',
getParams: function () {
var appKey = ''; // 你的应用ID
var key = ''; // 你的应用秘钥
var salt = (new Date).getTime();
var curtime = Math.round(new Date().getTime() / 1000);
var str1 = appKey + truncate(alfy.input) + salt + curtime + key;
var sign = CryptoJS.SHA256(str1).toString(CryptoJS.enc.Hex);
return {
query: {
q: alfy.input,
appKey,
salt,
from: 'zh-CHS',
to: 'en',
sign: sign,
signType: "v3",
curtime,
}
}
},
filter: {
prep: [
'and', 'or', 'the', 'a', 'at', 'of'
],
prefix: [],
suffix: [
'ing', 'ed', 'ly'
],
verb: [
'was'
]
}
}; |
@liuarui 大佬,用了你的包,现在还是报错是啥问题啊,有道的key没问题,在有道翻译那个workflow中用是正常的 |
|
怎么也用不了 也是抱歉 |
谢谢大佬 已经可以了 |
我用python写了一个:https://github.com/daniellauyu/pyCodevar |
感谢,在你这个基础上我稍作修改了一些,无需安装crypto-js,改成用node自己的crypto来实现SHA-256'use strict';
const alfy = require('alfy');
const sample = require('lodash.sample');
const crypto = require('crypto');
function truncate(q){
var len = q.length;
if(len<=20) return q;
return q.substring(0, 10) + len + q.substring(len-10, len);
}
module.exports = {
youDaoApi: 'https://openapi.youdao.com/api',
getParams: function () {
var appKey = ''; // 你的应用ID
var key = ''; // 你的应用秘钥
var salt = (new Date).getTime();
var curtime = Math.round(new Date().getTime() / 1000);
var str1 = appKey + truncate(alfy.input) + salt + curtime + key;
const hash = crypto.createHash('sha256');
hash.update(str1);
return {
query: {
q: alfy.input,
appKey,
salt,
from: 'zh-CHS',
to: 'en',
sign: hash.digest('hex'),
signType: "v3",
curtime,
}
}
},
filter: {
prep: [
'and', 'or', 'the', 'a', 'at', 'of'
],
prefix: [],
suffix: [
'ing', 'ed', 'ly'
],
verb: [
'was'
]
}
}; |
CodeVar undefined
Alfred 5.0.4
darwin arm64 22.4.0
[11:58:58.213] CodeVar[Script Filter] Queuing argument '你好'
[11:58:58.421] CodeVar[Script Filter] Script with argv '(null)' finished
[11:58:58.426] ERROR: CodeVar[Script Filter] Code 1: {
"items": [
{
"title": "ParseError: Unexpected token '<', "\n\n\n <meta http-equiv="Content-Type" content="te...\n at /Users/doudou/Library/Application Support/Alfred/Alfred.alfredpreferences/workflows/user.workflow.1239E880-0DA5-4507-9E68-9DD6FCD250E2/node_modules/got/index.js:118:14\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)",
"subtitle": "Press ⌘L to see the full error and ⌘C to copy it.",
"valid": false,
"text": {
"copy": "
\nParseError: Unexpected token '<', \"<!DOCTYPE \"... is not valid JSON in \"http://fanyi.youdao.com/openapi.do\": \n<!DOCTYPE html>\n<html>\n<head>\n <meta http-equiv=\"Content-Type\" content=\"te...\n at /Users/doudou/Library/Application Support/Alfred/Alfred.alfredpreferences/workflows/user.workflow.1239E880-0DA5-4507-9E68-9DD6FCD250E2/node_modules/got/index.js:118:14\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n
\n\n-\nCodeVar undefined\nAlfred 5.0.4\ndarwin arm64 22.4.0","largetype": "ParseError: Unexpected token '<', "\n\n\n <meta http-equiv="Content-Type" content="te...\n at /Users/doudou/Library/Application Support/Alfred/Alfred.alfredpreferences/workflows/user.workflow.1239E880-0DA5-4507-9E68-9DD6FCD250E2/node_modules/got/index.js:118:14\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)"
},
"icon": {
"path": "/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/AlertStopIcon.icns"
}
}
]
}
The text was updated successfully, but these errors were encountered: