{"id":3598,"date":"2022-08-26T20:45:42","date_gmt":"2022-08-26T11:45:42","guid":{"rendered":"https:\/\/dennie.tokyo\/it\/?p=3598"},"modified":"2022-09-23T17:00:06","modified_gmt":"2022-09-23T08:00:06","slug":"%e3%80%90react%e3%80%91http-request","status":"publish","type":"post","link":"https:\/\/dennie.tokyo\/it\/?p=3598","title":{"rendered":"\u3010React\u3011Http Request"},"content":{"rendered":"\n<p>React\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067HTTP\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<!--more-->\n\n\n\n<h1 class=\"wp-block-heading\">\u524d\u63d0\u3068\u8aac\u660e<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">\u5fc5\u8981\u306a\u30e2\u30b8\u30e5\u30fc\u30eb<\/h2>\n\n\n\n<p>axios \u3092\u4f7f\u7528\u3057\u3066\u3001HTTP\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u884c\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u5b9f\u884c\u3059\u308b API<\/h2>\n\n\n\n<p>\u4e8b\u524d\u306b\u9069\u5f53\u306a WEB API \u3092\u6e96\u5099\u3057\u307e\u3059\u3002\u4eca\u56de\u5229\u7528\u3059\u308bAPI\u306e\u4ed5\u69d8\u306f\u4ee5\u4e0b\u306e\u901a\u308a\u3067\u3059\u3002\u30ea\u30af\u30a8\u30b9\u30c8\u30e1\u30bd\u30c3\u30c9\u306f GET \u3092\u4f7f\u7528\u3057\u30ec\u30b9\u30dd\u30f3\u30b9\u30c7\u30fc\u30bf\u3092JSON\u5f62\u5f0f\u3067\u53d7\u3051\u53d6\u308a\u307e\u3059\u3002\u4eca\u56de\u306f\u30ea\u30af\u30a8\u30b9\u30c8\u30d1\u30e9\u30e1\u30fc\u30bf\u306f\u4f7f\u7528\u3057\u307e\u305b\u3093\u3002<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<figure class=\"wp-block-table is-style-regular has-small-font-size\"><table class=\"has-fixed-layout\"><thead><tr><th>URI<\/th><th>\u30e1\u30bd\u30c3\u30c9<\/th><th>\u30ea\u30af\u30a8\u30b9\u30c8\u30d1\u30e9\u30e1\u30fc\u30bf<\/th><th>\u30ec\u30b9\u30dd\u30f3\u30b9\u30d1\u30e9\u30e1\u30fc\u30bf(JSON)<\/th><\/tr><\/thead><tbody><tr><td>https:\/\/wey3af4xhk.execute-api.ap-northeast-1.amazonaws.com\/test\/sample01<\/td><td>GET<\/td><td>\u306a\u3057<\/td><td>{<br>&#8220;name&#8221;: &#8220;dennie&#8221;<br>}<\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div><\/div>\n\n\n\n<h1 class=\"wp-block-heading\">\u6e96\u5099<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">axios\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/h2>\n\n\n\n<p>axios\u3092\u4f7f\u7528\u3059\u308b\u306e\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3067\u4ee5\u4e0b\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>npm install axios --save<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8<\/h2>\n\n\n\n<p>\u30fbApp\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8<br>HttpClient\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u547c\u3073\u51fa\u3057\u7d50\u679c\u3092\u53d7\u3051\u53d6\u308a\u3001\u753b\u9762\u306b\u8868\u793a\u3059\u308b\u3002<\/p>\n\n\n\n<p>\u30fbHttpClient\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8<br>HTTP\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u5b9f\u884c\u3059\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3002<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">\u96db\u5f62<\/h1>\n\n\n\n<p>\u307e\u305a\u306f\u96db\u5f62\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<br>\u4ee5\u4e0b\u306f HttpClient\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8 \u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\"><code>import sample from &#39;.\/sample.json&#39;;\n\nfunction HttpClient(setVal) {\n    setVal(sample);\n}  \nexport default HttpClient;<\/code><\/pre><\/div>\n\n\n\n<p>HTTP\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u5b9f\u884c\u305b\u305a\u3001\u4ee3\u308f\u308a\u306bjson\u30d5\u30a1\u30a4\u30eb\u3092\u8aad\u307f\u8fbc\u307f\u305d\u306e\u5185\u5bb9\u3092\u8fd4\u5374\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u7d9a\u3044\u3066\u3001\u4ee5\u4e0b\u306f sample.json \u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-json\" data-lang=\"JSON\"><code>{\n    &quot;name&quot;: &quot;dennie&quot;\n}<\/code><\/pre><\/div>\n\n\n\n<p>\u7d9a\u3044\u3066\u3001App\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8 \u3067\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\"><code>import React, {useState, useEffect} from &#39;react&#39;;\nimport HttpResponse from &#39;.\/HttpClient&#39;;\n\nfunction App() {\n\n  const [response, setResponse] = useState(&quot;&quot;);\n\n  useEffect(() =&gt; {\n    HttpResponse(setResponse);\n  },[])\n\n  return (\n    &lt;&gt;{response ? response.name: &lt;h1&gt;Lording...&lt;\/h1&gt;}&lt;\/&gt;\n  );\n}\n\nexport default App;<\/code><\/pre><\/div>\n\n\n\n<p>API\u304b\u3089\u53d7\u3051\u53d6\u3063\u305f\u30ec\u30b9\u30dd\u30f3\u30b9\u3092\u4fdd\u6301\u3059\u308b\u30b9\u30c6\u30fc\u30c8\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002<br>useEffect\u306b\u3066WEB API\u3092\u5b9f\u884c\u3059\u308bHttpClient\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u3002<br>\u30ec\u30b9\u30dd\u30f3\u30b9\u306e\u5185\u5bb9\u3092\u753b\u9762\u306b\u8868\u793a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>useEffect\u306b\u3064\u3044\u3066\u306f\u4ee5\u4e0b\u3092\u53c2\u7167\u3057\u3066\u4e0b\u3055\u3044\u3002<\/p>\n\n\n\n<div class=\"title_box\"><span class=\"box-title\">\u53c2\u7167<\/span>\n<p><\/p>\n<p><a href=\"https:\/\/dennie.tokyo\/it\/?p=3618\" rel=\"noopener\" target=\"_blank\">\u3010React\u3011\u526f\u4f5c\u7528<\/a><\/p>\n<\/div>\n\n\n\n<h1 class=\"wp-block-heading\">HTTP\u30ea\u30af\u30a8\u30b9\u30c8\u306e\u5b9f\u884c<\/h1>\n\n\n\n<p>\u305d\u308c\u3067\u306f\u3001\u5b9f\u969b\u306bWEB API\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002\u4fee\u6b63\u3059\u308b\u306e\u306fHttpClient\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u307f\u306b\u306a\u308a\u307e\u3059\u3002<br>\u4ee5\u4e0b\u306fHttpClient\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\"><code>import axios from &#39;axios&#39;;\n\nfunction HttpClient(setVal) {\n    \n    \/\/ HTTP\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u5b9f\u884c\u3059\u308b\u3002\n    axios.get(&#39;https:\/\/wey3af4xhk.execute-api.ap-northeast-1.amazonaws.com\/test\/sample01&#39;)\n        .then(response =&gt; {\n            setVal(response.data)\n        })\n        .catch(() =&gt; {\n            console.log(&#39;\u901a\u4fe1\u306b\u5931\u6557\u3057\u307e\u3057\u305f&#39;);\n        });\n        \n}\n\nexport default HttpClient;<\/code><\/pre><\/div>\n\n\n\n<p>axios \u306e get \u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u884c\u3057\u3066\u3044\u307e\u3059\u3002web api \u306e\u5b9f\u884c\u306b\u6210\u529f\u3059\u308b\u3068\u3001\u53d6\u5f97\u3057\u305f\u30ec\u30b9\u30dd\u30f3\u30b9\u3092\u30b9\u30c6\u30fc\u30c8\u66f4\u65b0\u95a2\u6570\u3078\u6e21\u3057\u3066\u3001\u30b9\u30c6\u30fc\u30c8\u5024\u3092\u66f4\u65b0\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u753b\u9762\u3078\u306e\u51fa\u529b\u5185\u5bb9\u306f\u5148\u7a0b\u3068\u5909\u308f\u308a\u3042\u308a\u307e\u305b\u3093\u3002\u30c7\u30fc\u30bf\u306e\u53d6\u5f97\u5148\u304c\u30ed\u30fc\u30ab\u30eb\u306ejson\u30d5\u30a1\u30a4\u30eb\u304b\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u7d4c\u7531\u3057\u3066\u53d7\u3051\u53d6\u3063\u305fjson\u30d5\u30a1\u30a4\u30eb(web api)\u304b\u306e\u9055\u3044\u3068\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">\u6700\u5f8c\u306b<\/h1>\n\n\n\n<p>\u7279\u306b\u3042\u308a\u307e\u305b\u3093\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>React\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067HTTP\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n","protected":false},"author":1,"featured_media":968,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[29],"tags":[],"class_list":["post-3598","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-react"],"_links":{"self":[{"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/posts\/3598","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3598"}],"version-history":[{"count":16,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/posts\/3598\/revisions"}],"predecessor-version":[{"id":3650,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/posts\/3598\/revisions\/3650"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=\/wp\/v2\/media\/968"}],"wp:attachment":[{"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3598"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3598"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dennie.tokyo\/it\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3598"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}