Xelloss0618 发表于 2025-5-29 21:31 X大威武,水平杠杠。感谢您的支持! |
niuyanbo2021 发表于 2025-5-29 20:58 因为我之前的JSON解析只返回了第一段的内容,我改了一下5楼的源码,现在可以返回所有段落了。 |
Xelloss0618 发表于 2023-9-18 21:11 发现个问题,多段落翻译时为何只返回了第1个段落的内容? |
hcwanz 发表于 2023-9-19 10:32 要做URL编码,我那个 表单构造类 会自动进行URL编码的 |
Xelloss0618 发表于 2023-9-18 21:11 问题好像是要把译文里的空格转成别的东西,不然就算参数错误,你的这个实例和浏览器自动转了,我这个跟个憨瓜一样直接填的空格 |
本帖最后由 Xelloss0618 于 2025-5-29 21:30 编辑 测试了一下,没问题了,注意要用自己的AppID和密钥,你图里那个 2015063000000001 根本就不能用。 下面是我的例子,依赖 PIV模块(换成 curl 也可以,不用特意添加协议头) <火山程序 类型 = "通常" 版本 = 1 /> 方法 百度翻译 <公开 静态 类型 = 文本型> 参数 原文 <类型 = 文本型> 参数 源语言 <类型 = 文本型 @默认值 = "en"> 参数 目标语言 <类型 = 文本型 @默认值 = "zh"> 参数 AppID <类型 = 文本型> 参数 密钥 <类型 = 文本型> { 变量 随机数 <类型 = 标准随机数类> 变量 salt <类型 = 文本型> 变量 sign <类型 = 文本型> 变量 表单 <类型 = 表单构造类U> 变量 网络访问 <类型 = 网络同步访问类> 变量 请求响应 <类型 = 网络请求响应类> salt = 随机数.取随机字符 (10, 1) sign = MD5校验类.取数据MD5 (文本到UTF8 (AppID + 原文 + salt + 密钥, 假), 假) 表单.添加参数 ("q", 原文).添加参数 ("from", 源语言).添加参数 ("to", 目标语言).添加参数 ("appid", AppID).添加参数 ("salt", salt).添加参数 ("sign", sign) 请求响应 = 网络访问.网页访问2 ("https://fanyi-api.baidu.com/api/trans/vip/translate", 请求方式_WinHTTP.POST, 表单.数据 ()) 如果 (请求响应.响应码 == 200) { 变量 json <类型 = YYJSON只读值> 如果 (json.解析 (请求响应.请求结果) == 真) { 变量 译文 <类型 = 文本型> json.取成员 ("trans_result").枚举循环 () { 加入文本 (译文, json.取枚举值 ().取成员文本 ("dst")) 加入换行文本 (译文) } 删自身尾空 (译文) // 去掉多余换行符 返回 (译文) } } 返回 ("") } |
填写协议头。把协议头都加上。 |
我翻译一个单词的可以,多于一个就不返回了,连报错都不返回 |
|Archiver|手机版|小黑屋|递归火山软件开发平台
( 鄂ICP备18029190号 )
GMT+8, 2025-7-4 19:58 , Processed in 0.096388 second(s), 23 queries .
Powered by Discuz! X3.4
© 2001-2017 Comsenz Inc.