【Golang】对接百度翻译API-golang版本sdk代码
最近为自己的客服系统增加了在线翻译功能
可以把访客任何语种消息翻译为中文
客服消息一键翻译为英文,详细演示效果可以注册唯一客服系统(gofly.v1kf.com),我审核通过后就可以体验了
详细golang版本的sdk如下:
package lib import ( "fmt" "github.com/tidwall/gjson" "kefu/tools" "net/url" ) type BaiduFanyi struct { AppId, AppSec string } func (this *BaiduFanyi) Translate(query, from, to string) (string, error) { salt := "1435660288" data := url.Values{} data.Set("q", query) data.Set("salt", salt) data.Set("appid", this.AppId) data.Set("from", from) data.Set("to", to) data.Set("sign", this.BuildSign(query, salt)) res, err := tools.PostForm("http://api.fanyi.baidu.com/api/trans/vip/translate", data) fmt.Println(res, err) res = gjson.Get(res, "trans_result.0.dst").String() res = tools.UrlDecode(res) return res, err } func (this *BaiduFanyi) BuildSign(query, salt string) string { str := fmt.Sprintf("%s%s%s%s", this.AppId, query, salt, this.AppSec) ret := tools.Md5(str) return ret }
使用方式如下:
baidu := &BaiduFanyi{ AppId: "2022070xxxxxx5", AppSec: "xxxxxxx", } res, err := baidu.Translate("hello", "en", "zh") log.Print(res, err) time.Sleep(1 * time.Second) res, err = baidu.Translate("taoshihan", "en", "zh") log.Print(res, err) time.Sleep(1 * time.Second) res, err = baidu.Translate("can i help you", "en", "zh") log.Print(res, err) time.Sleep(1 * time.Second) res, err = baidu.Translate("你好", "zh", "en") log.Print(res, err)
这个里面的MD5函数,以及urldeocde函数,以及发送post form数据函数
//发送http post请求数据为form func PostForm(url string, data url.Values) (string, error) { resp, err := http.PostForm(url, data) if err != nil { return "", err } defer resp.Body.Close() content, err := ioutil.ReadAll(resp.Body) if err != nil { return "", err } return string(content), nil }
//md5加密 func Md5(src string) string { m := md5.New() m.Write([]byte(src)) res := hex.EncodeToString(m.Sum(nil)) return res }
func UrlDecode(str string) string { res, err := url.QueryUnescape(str) if err != nil { return "" } return res }
十年开发经验程序员,离职全心创业中,历时三年开发出的产品《唯一客服系统》
一款基于Golang+Vue开发的在线客服系统,软件著作权编号:2021SR1462600。一套可私有化部署的网站在线客服系统,编译后的二进制文件可直接使用无需搭开发环境,下载zip解压即可,仅依赖MySQL数据库,是一个开箱即用的全渠道在线客服系统,致力于帮助广大开发者/公司快速部署整合私有化客服功能。
开源地址:唯一客服(开源学习版)
官网地址:唯一客服官网
标签:
Go
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2021-07-09 [composer] composer自动加载files 形式测试
2021-07-09 [composer] composer.json autoload参数
2021-07-09 [composer] composer remove 移除扩展包
2021-07-09 [composer] composer.json 中require和require-dev 的区别
2021-07-09 [composer]composer 版本号前置~与^符号的区别
2021-07-09 [composer] Composer 的 --prefer-dist 与–prefer-source 有何不同
2020-07-09 [Linux] 查看进程的上下文切换pidstat