当前位置: 首页 > news >正文

单网页网站如何做搞定设计网站做的图怎么下载不了

单网页网站如何做,搞定设计网站做的图怎么下载不了,网站建设捌金手指花总三十,天津建站模板源码一、程序要实现效果#xff1a; 在命令行调用程序的时候#xff0c;可以在命令行的后面查询一个单词#xff0c;然后会输出单词的音标和注释。 二、思路分析#xff1a; 定义一个结构体 DictRequest#xff0c;用于表示翻译请求的数据结构。其中包含了 TransType#…一、程序要实现效果 在命令行调用程序的时候可以在命令行的后面查询一个单词然后会输出单词的音标和注释。 二、思路分析 定义一个结构体 DictRequest用于表示翻译请求的数据结构。其中包含了 TransType翻译类型、Source源语言单词、UserID用户ID等字段。定义一个结构体 DictResponse用于表示翻译响应的数据结构。其中包含了 Rc返回码、Wiki维基百科信息、Dictionary词典信息等字段。定义一个函数 query用于执行翻译请求并获取翻译结果。该函数接受一个参数 word表示要翻译的单词。在 query 函数中首先创建了一个 HTTP 客户端对象 client然后构造了一个 DictRequest 对象 request并将 TransType 设置为 en2zh表示将源语言翻译成中文。接下来将 request 对象序列化为 JSON 格式的字节流 buf并创建一个 bytes.Reader 对象 data 来读取该字节流。然后构造一个 HTTP 请求对象 req使用 http.NewRequest 函数设置请求的方法为 POSTURL 为 api.interpreter.caiyunai.com/v1/dict并将 data 作为请求的主体数据。接着设置请求头的各项字段包括连接方式、用户代理、自定义头部字段等。其中有一些字段的值是通过函数调用来设置的比如 req.Header.Set(X-Authorization, token:qgemv4jr1y38jyq6vhvi) 设置了 X-Authorization 头部字段的值为 token:qgemv4jr1y38jyq6vhvi。最后通过调用 client.Do(req) 发送请求并获取到响应对象 resp。关闭响应对象的 Body 流并将响应的字节流读取为字符串 bodyText。使用 json.Unmarshal 函数将 bodyText 解析为 DictResponse 对象 dictResponse。最后打印出翻译结果包括源单词的中英文翻译以及一些解释性的信息。在 main 函数中首先检查命令行参数的数量是否正确如果不正确则输出使用方法并退出程序。如果参数数量正确则从命令行参数中获取要翻译的单词并调用 query 函数进行翻译。 三、具体代码 package mainimport (bytesencoding/jsonfmtio/ioutillognet/httpos )type DictRequest struct {TransType string json:trans_typeSource string json:sourceUserID string json:user_id }type DictResponse struct {Rc int json:rcWiki struct {KnownInLaguages int json:known_in_laguagesDescription struct {Source string json:sourceTarget interface{} json:target} json:descriptionID string json:idItem struct {Source string json:sourceTarget string json:target} json:itemImageURL string json:image_urlIsSubject string json:is_subjectSitelink string json:sitelink} json:wikiDictionary struct {Prons struct {EnUs string json:en-usEn string json:en} json:pronsExplanations []string json:explanationsSynonym []string json:synonymAntonym []string json:antonymWqxExample [][]string json:wqx_exampleEntry string json:entryType string json:typeRelated []interface{} json:relatedSource string json:source} json:dictionary }func query(word string) {client : http.Client{}request : DictRequest{TransType: en2zh, Source: word}buf, err : json.Marshal(request)if err ! nil {log.Fatal(err)}var data bytes.NewReader(buf)req, err : http.NewRequest(POST, https://api.interpreter.caiyunai.com/v1/dict, data)if err ! nil {log.Fatal(err)}req.Header.Set(Connection, keep-alive)req.Header.Set(DNT, 1)req.Header.Set(os-version, )req.Header.Set(sec-ch-ua-mobile, ?0)req.Header.Set(User-Agent, Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36)req.Header.Set(app-name, xy)req.Header.Set(Content-Type, application/json;charsetUTF-8)req.Header.Set(Accept, application/json, text/plain, */*)req.Header.Set(device-id, )req.Header.Set(os-type, web)req.Header.Set(X-Authorization, token:qgemv4jr1y38jyq6vhvi)req.Header.Set(Origin, https://fanyi.caiyunapp.com)req.Header.Set(Sec-Fetch-Site, cross-site)req.Header.Set(Sec-Fetch-Mode, cors)req.Header.Set(Sec-Fetch-Dest, empty)req.Header.Set(Referer, https://fanyi.caiyunapp.com/)req.Header.Set(Accept-Language, zh-CN,zh;q0.9)req.Header.Set(Cookie, _ym_uid16456948721020430059; _ym_d1645694872)resp, err : client.Do(req)if err ! nil {log.Fatal(err)}defer resp.Body.Close()bodyText, err : ioutil.ReadAll(resp.Body)if err ! nil {log.Fatal(err)}if resp.StatusCode ! 200 {log.Fatal(bad StatusCode:, resp.StatusCode, body, string(bodyText))}var dictResponse DictResponseerr json.Unmarshal(bodyText, dictResponse)if err ! nil {log.Fatal(err)}fmt.Println(word, UK:, dictResponse.Dictionary.Prons.En, US:, dictResponse.Dictionary.Prons.EnUs)for _, item : range dictResponse.Dictionary.Explanations {fmt.Println(item)} }func main() {if len(os.Args) ! 2 {fmt.Fprintf(os.Stderr, usage: simpleDict WORD example: simpleDict hello)os.Exit(1)}word : os.Args[1]query(word) }四、实现过程中可能比较有难度的问题 错误处理在发送网络请求时可能会出现连接错误、超时错误、服务器错误等。需要对这些错误进行适当的处理比如重试、记录日志、返回错误信息等。请求头设置在构造 HTTP 请求时需要设置各种请求头字段比如 User-Agent、Cookie、Authorization 等。需要注意各个字段的格式和含义并确保它们符合 API 的要求。编码问题由于 API 返回的数据可能是 UTF-8 或其他编码方式需要进行相应的解码操作才能正确地读取其中的内容。同时在构造请求体时也需要注意数据的编码和转义问题。JSON 解析在解析 JSON 数据时可能会出现解码错误、类型断言错误等问题。需要使用合适的方法来解析 JSON 数据比如使用 json.Unmarshal 函数将字节流解析为结构体或使用 json.Decode 函数将字符串解析为 JSON 对象。多语言支持代码中涉及到了中英文翻译的逻辑需要根据源语言和目标语言的不同来构造相应的翻译请求。这可能涉及到字符串的处理、字符编码的转换等问题。 五、总结 本篇文章介绍了如何去创建一个简单的命令行字典其功能为可以将输入的单词翻译成中文或英文。它使用了Interpreter API来与翻译服务进行交互并通过HTTP请求发送翻译请求并获取响应数据。代码中包含了错误处理、请求头设置、JSON解析等关键步骤以确保程序的稳定性和正确性。此外还考虑了多语言支持和编码问题以应对不同的情况。 如果你对编程有一定的基础并且对网络编程和JSON解析有一定的了解那么可以尝试阅读和理解这段代码。通过学习和实践你可以掌握如何使用Interpreter API来进行翻译服务的开发以及如何解析和处理JSON数据。这将为你进一步深入学习编程和开发有趣的应用程序提供有价值的经验和技能。
http://www.hkea.cn/news/14257036/

相关文章:

  • 哈尔滨网站制作哪家好广州网络在线推广
  • 云南省建设厅一级建造师网站深圳网站设计报价
  • 口碑好的网站建设uc网页浏览器网页版
  • 怎么进入网站管理系统做网站找哪家
  • 长沙模板建站哪家好太原建站的模板
  • 新艾尚网站建设推广蒙牛官网网站怎么做的
  • 凡科网站建设视频国内做任务得数字货币的网站
  • 做网站潜江那种投票网站里面怎么做
  • 电商网站里的水果图片怎么做的电子政务网站代码
  • 网站建设的技术阶段类似携程网的网站
  • 网站设计制作的特点有哪些wordpress 群发消息
  • 苏宁易购网站设计怎么制作深圳比较好的网站设计公司
  • 淮安做网站建设的网络公司网站没有在工信部备案
  • flask做网站工具惠州市网站开发
  • wordpress 如何仿站琴行网站建设方案
  • 宝安网站建设网页优化包括
  • 个人网站做哪些流程相机网站建设策划书
  • 分类目录网站程序教育网站案例
  • 怎样建设学校网站首页怎么制作页面边框
  • 如何制作一个网站做淘宝券网站模板psd
  • 培训课程网站建设防水网站怎么做
  • 免费高清图片素材网站有哪些亚马逊的网站建设分析
  • 网站后台打不开的原因重庆seo代理
  • 全县网站建设情况通报个人专业网站备案
  • 乐昌市建设网站推广网站软文
  • 用vue开发的网站国内网站有哪些
  • 山西建设网站公司wordpress自适应淘宝客主题
  • 怎样做好网站wordpress搜索结果不存在页面
  • 萧山城市建设网站厦门高端网站建设公司
  • 标准网站建设哪家便宜青岛搜索推广排名