Showing
1 changed file
with
44 additions
and
5 deletions
... | @@ -3,6 +3,11 @@ import Header from './components/Header'; | ... | @@ -3,6 +3,11 @@ import Header from './components/Header'; |
3 | import './style/Main.css'; | 3 | import './style/Main.css'; |
4 | require('dotenv').config(); | 4 | require('dotenv').config(); |
5 | 5 | ||
6 | +const axios = require('axios'); | ||
7 | +const API_KEY = "1f14e860f7f53f39a4dfe0a2a919a8c7"; | ||
8 | +//process.env.api_key; | ||
9 | +let imageFormData = new FormData(); | ||
10 | + | ||
6 | export default function Main() { | 11 | export default function Main() { |
7 | const [imgBase64, setImgBase64] = useState(""); | 12 | const [imgBase64, setImgBase64] = useState(""); |
8 | const [img, setImage] = useState(null); | 13 | const [img, setImage] = useState(null); |
... | @@ -19,16 +24,50 @@ export default function Main() { | ... | @@ -19,16 +24,50 @@ export default function Main() { |
19 | setImage(event.target.files[0]); // 파일 상태 업데이트 | 24 | setImage(event.target.files[0]); // 파일 상태 업데이트 |
20 | } | 25 | } |
21 | } | 26 | } |
27 | + | ||
28 | + const analysisImage = () => { | ||
29 | + imageFormData.append('file', img); | ||
30 | + axios({ | ||
31 | + method: 'post', | ||
32 | + url: "https://cors-anywhere.herokuapp.com/https://cv-api.kakaobrain.com/pose", | ||
33 | + headers: { | ||
34 | + 'Authorization': `KakaoAK ${API_KEY}`, | ||
35 | + 'Content-Type': 'multipart/form-data', | ||
36 | + 'X-Requested-With': '*' | ||
37 | + }, | ||
38 | + data: imageFormData | ||
39 | + }).then(function (response) { | ||
40 | + console.log(JSON.stringify(response.data)); | ||
41 | + }).catch(function (error) { | ||
42 | + if (error.response) { | ||
43 | + // 요청이 이루어졌으며 서버가 2xx의 범위를 벗어나는 상태 코드로 응답했습니다. | ||
44 | + console.log(error.response.data); | ||
45 | + console.log(error.response.status); | ||
46 | + console.log(error.response.headers); | ||
47 | + } | ||
48 | + else if (error.request) { | ||
49 | + // 요청이 이루어 졌으나 응답을 받지 못했습니다. | ||
50 | + // `error.request`는 브라우저의 XMLHttpRequest 인스턴스 또는 | ||
51 | + // Node.js의 http.ClientRequest 인스턴스입니다. | ||
52 | + console.log(error.request); | ||
53 | + } | ||
54 | + else { | ||
55 | + // 오류를 발생시킨 요청을 설정하는 중에 문제가 발생했습니다. | ||
56 | + console.log('Error', error.message); | ||
57 | + } | ||
58 | + console.log(error.config); | ||
59 | + }); | ||
60 | + } | ||
22 | return ( | 61 | return ( |
23 | <div> | 62 | <div> |
24 | - <Header/> | 63 | + <Header /> |
25 | <span>This is Main Page</span> | 64 | <span>This is Main Page</span> |
26 | - <div className="Image-Preview-Container" style={{"backgroundColor": "#efefef", "width":"400px", "height": "400px"}}> | 65 | + <div className="Image-Preview-Container" style={{ "backgroundColor": "#efefef", "width": "400px", "height": "400px" }}> |
27 | - <img className="Image-Preview" alt="preview"src={imgBase64}></img> | 66 | + <img className="Image-Preview" alt="preview" src={imgBase64}></img> |
28 | </div> | 67 | </div> |
29 | <div className="Image_input"> | 68 | <div className="Image_input"> |
30 | - <input type="file" name="file" onChange={handleChangeFile}/> | 69 | + <input type="file" name="file" onChange={handleChangeFile} /> |
31 | - <button type="button" onClick={null}/> | 70 | + <button type="button" onClick={analysisImage} /> |
32 | </div> | 71 | </div> |
33 | </div> | 72 | </div> |
34 | ) | 73 | ) | ... | ... |
-
Please register or login to post a comment