{"id":109599,"date":"2020-04-28T17:57:32","date_gmt":"2020-04-28T09:57:32","guid":{"rendered":"http:\/\/4563.org\/?p=109599"},"modified":"2020-04-28T17:57:32","modified_gmt":"2020-04-28T09:57:32","slug":"%e7%91%9e%e5%a3%ab%e5%86%9b%e5%88%80-gout-v0-0-6-%e7%89%88%e6%9c%ac%e5%8f%91%e5%b8%83%e5%95%a6%e3%80%82%e3%80%82%e3%80%82","status":"publish","type":"post","link":"http:\/\/4563.org\/?p=109599","title":{"rendered":"\u745e\u58eb\u519b\u5200! gout v0.0.6 \u7248\u672c\u53d1\u5e03\u5566\u3002\u3002\u3002"},"content":{"rendered":"<div>\n<div>\n<div>\n<h1>                  \u745e\u58eb\u519b\u5200! gout v0.0.6 \u7248\u672c\u53d1\u5e03\u5566\u3002\u3002\u3002               <\/h1>\n<p> <\/p>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : guonaihong <\/span>  <span><i><\/i> 67<\/span> <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div isfirst=\"1\"> <\/p>\n<h2>gout \u7b80\u4ecb<\/h2>\n<p>gout \u662f http client \u9886\u57df\u7684\u745e\u58eb\u519b\u5200\uff0c\u5c0f\u5de7\uff0c\u5f3a\u5927\uff0c\u7280\u5229\u3002<\/p>\n<h2>\u9879\u76ee\u5730\u5740<\/h2>\n<p>https:\/\/github.com\/guonaihong\/gout<\/p>\n<h2>\u6700\u7ec8\u5f62\u6001<\/h2>\n<p>gout.feature &gt; sum(all( http_client.feature))<\/p>\n<h2>\u6784\u67b6\u56fe<\/h2>\n<p><img decoding=\"async\" src=\"http:\/\/4563.org\/wp-content\/uploads\/2020\/06\/20200602_5ed5d6751bb04.png\" alt=\"\u745e\u58eb\u519b\u5200! gout v0.0.6 \u7248\u672c\u53d1\u5e03\u5566\u3002\u3002\u3002\" \/><\/p>\n<h2>\u5e38\u89c1\u95ee\u9898\u56de\u7b54<\/h2>\n<ul>\n<li>\u95ee:\u4e3a\u5565\u7248\u672c\u53f7\u8fd9\u4e48\u4fdd\u5b88\n<ul>\n<li>\u7b54:\u89c4\u5212\u4e86\u5f88\u591a\u597d\u73a9\u7684\u529f\u80fd(\u81ea\u5b9a\u4e49 benchmark,upstream, select, match)\uff0c\u5982\u679c\u7248\u672c\u53f7\u4e0d\u538b\u7f29\u4e0b\uff0c\u8fc7\u6bb5\u65f6\u95f4\u5c31\u548c chrome \u4e00\u6837\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u95ee:\u4f55\u4e3a\u6d41\u5f0f\u67b6\u6784\n<ul>\n<li>\u7b54:\u53ef\u4ee5\u5148\u770b\u4e0a\u9762\u7684\u6784\u67b6\u56fe\uff0c\u5df2\u7ecf\u5f88\u6e05\u6670\u5730\u63cf\u8ff0\u4e86\u3002\u6709\u70b9\u540e\u6094\u628a\u8fd9\u4e2a\u6982\u5ff5\u629b\u51fa\u6765\uff0c\u73b0\u5728\u6709\u5f88\u591a\u7ae5\u978b\u95ee\u6211\u3002\u6d41\u5f0f\u67b6\u6784\u4e3a\u4e86\u6a2a\u5411\u6269\u5f20\u529f\u80fd\u7528\u7684\u8bbe\u8ba1\u65b9\u5f0f\uff0c\u5982\u679c\u4e0d\u5173\u5fc3\u4ee3\u7801\u5792\u4e86\u5f88\u591a\u884c\u3000\u5982\u4f55\u4fdd\u6301\u8bbe\u8ba1\u7684\u6e05\u6670\u5ea6\uff0c\u4e5f\u6ca1\u5fc5\u8981\u5173\u5fc3\u8fd9\u70b9\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u95ee:\u5982\u4f55\u53c2\u4e0e gout\n<ul>\n<li>\u7b54:\u53ea\u8981\u4f60\u89c9\u5f97\u8fd9\u6837\u53ef\u4ee5\u8ba9 gout \u66f4\u597d\u5c31\u884c\u3002\u5c0f\u5230\u4e00\u4e2a\u62fc\u5199\uff0c\u5927\u5230\u4e00\u4e2a pr \u90fd\u53ef\u4ee5\u3002\u63d0\u529f\u80fd pr \u6211\u4f1a\u5c3d\u5fc3\u5ba1\u6838\uff0c\u5728\u4e92\u52a8\u7684\u8fc7\u7a0b\u4e5f\u8bb8\u4f1a\u5b66\u5230\u8001\u53f8\u673a\u72ec\u95e8\u7edd\u6280\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>\u7279\u522b\u611f\u8c22\u4e0b\u9762 github \u7528\u6237\u53c2\u4e0e v0.0.6 \u7248\u672c<\/h2>\n<p>deloz,logeable(\u6392\u540d\u4e0d\u5206\u5148\u540e\uff0c\u5982\u679c\u6709\u7ae5\u978b\u5fd8\u4e86\u8bf4\u4e86\uff0c\u4e5f\u53ef\u4ee5\u544a\u8bc9\u6211\u4e0b)<\/p>\n<h2>\u5c0f\u8d34\u58eb(\u66f4\u591a\u7528\u6cd5\u8bf7\u770b\u6587\u6863)<\/h2>\n<h3>\u4f7f\u7528 gout \u751f\u6210 curl \u547d\u4ee4<\/h3>\n<pre><code>package main  import (     \"fmt\"     \"github.com\/guonaihong\/gout\" )  func main() {     \/\/ 1.formdata     err := gout.GET(\":1234\").         SetForm(gout.A{\"text\", \"good\", \"mode\", \"A\", \"voice\", gout.FormFile(\".\/t8.go\")}).         Export().Curl().Do()     \/\/ output:     \/\/ curl -X GET -F \"text=good\" -F \"mode=A\" -F \"[email&#160;protected]\/voice\" \"http:\/\/127.0.0.1:1234\"      \/\/ 2.json body     err = gout.GET(\":1234\").         SetJSON(gout.H{\"key1\": \"val1\", \"key2\": \"val2\"}).         Export().Curl().Do()     \/\/ output:     \/\/ curl -X GET -H \"Content-Type:application\/json\" -d \"{\"key1\":\"val1\",\"key2\":\"val2\"}\" \"http:\/\/127.0.0.1:1234\"      fmt.Printf(\"%vn\", err) } <\/code><\/pre>\n<\/p><\/div>\n<div> <b>\u5927\u4f6c\u6709\u8a71\u8aaa<\/b> (<span>9<\/span>)        <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<ul>\n<li data-pid=\"590351\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : noobsheldon <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u745e\u58eb\u519b\u5200\u662f\u7528\u6765\u505a\u4ec0\u4e48\u7684\uff1f\/doge                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"590352\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : guonaihong <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @noobsheldon \u780d http client \u9886\u57df\u7684\u5c0f\u602a\u517d\u3002gout \u662f\u4e2a http client \u5e93\u3002                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"590353\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : zxCoder <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u5bb3 \u4e0d\u4f1a\u72d7\u8bed\u8a00                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"590354\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : guonaihong <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @zxCoder golang \u7528\u7740\u633a\u723d\uff0c\u63a8\u8350\u4e0b\u3002\u54c8\u54c8\u3002\u3002\u3002                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"590355\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : loading <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u840c\u65b0\u4e0d\u61c2\uff0c\u8fd9\u662f\u7528\u6765\u5e72\u5565\u7684\u3002                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"590356\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : richzhu <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u6240\u4ee5\u8fd9\u5230\u5e95\u662f\u5565\uff0c \u7c7b\u4f3c\u4e0e gin \u7684 web \u6846\u67b6\uff1f\uff1f                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"590357\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : guonaihong <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @richzhu gin \u662f\u670d\u52a1\u7aef lib\uff0cgout \u662f\u5ba2\u6237\u7aef lib\u3002                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"590358\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : guonaihong <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @loading gout \u662f http \u8bf7\u6c42\u5e93                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"590359\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : ihciah <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u4f60\u8bf4\u7c7b\u4f3c okhttp \u5927\u5bb6\u5c31\u660e\u767d\u4e86                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li>\n","protected":false},"excerpt":{"rendered":"<p>\u745e\u58eb\u519b\u5200! gout v0.0.6&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[],"tags":[],"_links":{"self":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/109599"}],"collection":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=109599"}],"version-history":[{"count":0,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/109599\/revisions"}],"wp:attachment":[{"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=109599"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=109599"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=109599"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}