C# .NET 讯飞机器翻译调用 详解
2021/6/13 14:22:02
本文主要是介绍C# .NET 讯飞机器翻译调用 详解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
讯飞的官方文档:
https://www.xfyun.cn/doc/nlp/xftrans/API.html
文档中没有C# .Net的示例,因此我来做一个。
首先还是一样去
https://www.xfyun.cn/service/xftrans
注册一个试用的API,并开通机器翻译
得到appid, apikey和apisecret
基本流程如图:
语言支持列表:
语言名称 | 缩写 |
---|---|
汉语普通话 | cn |
英语 | en |
彝语 | ii |
广东话 | yue |
日语 | ja |
俄语 | ru |
法语 | fr |
西班牙语 | es |
阿拉伯语 | ar |
首先apikey,源语言,目标语言加要翻译的字串的base64码四项合在一起组成json格式request body
我这里要翻译的字串是
今天天气怎么样?
组合成Json
{"common":{"app_id":"bddb2ece"},"business":{"from":"cn","to":"en"},"data":{"text":"5LuK5aSp5aSp5rCU5oCO5LmI5qC377yf"}}
Json string 通过sha256计算后进行base64编码,并再前面加上SHA-256=
作为digest
SHA-256=2914KHGUCAu4TIVDxqRs3Zy55EXa8hZ0kyFEE+4rMdg=
同时记录一个UTC时间
Sun, 13 Jun 2021 04:19:27 GMT
时间,digest,host,path合成digest原始字串
host: itrans.xfyun.cn date: Sun, 13 Jun 2021 04:19:27 GMT POST /v2/its HTTP/1.1 digest: SHA-256=2914KHGUCAu4TIVDxqRs3Zy55EXa8hZ0kyFEE+4rMdg=
digest原始字串,使用apisecret进行hmacsha256计算并将结果进行base64编码,即得到signature
2Xk/mw8HwY6salSzqbSjkFeE69Z3NVW+pAhlNFrVDK4=
合成Authorization string
api_key="myapikey", algorithm="hmac-sha256", headers="host date request-line digest", signature="2Xk/mw8HwY6salSzqbSjkFeE69Z3NVW+pAhlNFrVDK4="
signature,Date,host,Authorization 加入request header
{Content-Type: application/json Accept: application/json Date: Sun, 13 Jun 2021 04:19:27 GMT Digest: SHA-256=2914KHGUCAu4TIVDxqRs3Zy55EXa8hZ0kyFEE+4rMdg= Authorization: api_key="myapikey", algorithm="hmac-sha256", headers="host date request-line digest", signature="2Xk/mw8HwY6salSzqbSjkFeE69Z3NVW+pAhlNFrVDK4=" }
把json发给host
https://itrans.xfyun.cn/v2/its
从response得到json返回结果
{ "code": 0, "message": "success", "sid": "its....", "data": { "result": { "from": "cn", "to": "en", "trans_result": { "dst": "What's the weather like today?", "src": "今天天气怎么样?" } } } }
调用完成
具体代码参考:
https://github.com/Dark-20001/xfyun-trans
感谢讯飞技术人员的支持
这篇关于C# .NET 讯飞机器翻译调用 详解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-11-18微软研究:RAG系统的四个层次提升理解与回答能力
- 2024-11-15C#中怎么从PEM格式的证书中提取公钥?-icode9专业技术文章分享
- 2024-11-14云架构设计——如何用diagrams.net绘制专业的AWS架构图?
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#
- 2024-01-24Advanced .Net Debugging 1:你必须知道的调试工具