μ΄μ λ λͺ¨λ₯΄κ² μ§λ§ λμΌν APIλ₯Ό μ¬μ©νλ©΄ λλλ‘ axiosμ response.dataκ° κ°μ²΄ λμ λ¬Έμμ΄μ λλ€. μλ κ·Έλ¦Όμ μ°Έμ‘°νμμμ€.
@huy-lv,
content-type
λ λ μλ΅ λͺ¨λ λμΌν©λκΉ?
@robmcguinness λ€, application/jsonμ λλ€
λλ κ°μ νλμ λ³Έλ€. μ κ²½μ°μλ API μλ΅μ μλͺ»λ JSON λ°μ΄ν°κ° ν¬ν¨λλ κ²½μ°κ° μμ΅λλ€. μ¦, JSON.parse
κ° λ°μν©λλ€. μ΄λ€ μ΄μ λ‘ Axiosλ μ΄ μ€λ₯λ₯Ό μΌν€κ³ data
μμ±μ μλͺ»λ JSON λ¬Έμμ΄μ μ€μ νκ² λ©λλ€.
λλμ΄ λ¬Έμ κ°μλ€. response.data
λ¬Έμ μ¬λ‘λ₯Ό νμΈν λ "
λ°μ΄ν°μ κ°μ μΌλΆ μλͺ»λ JSON λ¬Έμμ΄μ΄ μλ΅μ μΆκ°λμ΄ JSON.parseμ μ€λ₯κ° λ°μνκ³ λ¬Έμμ΄μ λ°νν©λλ€.
Axios, XMLHttpRequest, fetchλ‘ νμΈνμ΅λλ€.
1./ Axiosμ XMLHttpRequestμ κ°μ λ¬Έμ κ° μμ΅λλ€.
2./ μμ
μ μλ²½νκ² κ°μ Έμ΅λλ€.
μΌλΆ λ¬Έμκ° κ·Έ λ¬Έμ λ‘ μ΄μ΄μ§ μ μλ€λ κ²μ μκ³ μμ΅λλ€. νμ€ν ν΄μΌ ν©λλ€.
μλ΅μ μΊ‘μ²νμ¬ νμΌλ‘ 첨λΆν μ μμ΅λκΉ?
@OpenGG λ΅λ³μ΄ λ¦μ΄ μ£μ‘ν©λλ€. μ¬κΈ°μ νμν κ² :D
https://1drv.ms/t/s!AnakDtCf8CG5hIgn2Hemy6zanFi50Q
@huy-lv λ΄κ° κΈ°λνλ κ²μ΄ μλλλ€. curlλ‘ λ΅λ³μ μ μ₯νμ ν, μ μ₯ν νμΌμ μ΄ μ΄μμ λ΅λ³λμ λλ‘νμ¬ μ²¨λΆν΄μ£ΌμΈμ.
@huy-lv
μ κ²½μ°μ§ λ§μΈμ, μ°Ύμμ΅λλ€.
μμ μ λΆμ¬λ£κ³ axiosλ‘ λ‘λλ₯Ό μλνμ§λ§ μ€λ₯κ° νμλμ§ μμ΅λλ€.
νμΌ: https://gist.github.com/OpenGG/ac72e79f9ef088e993213473116c0cd0
λ°λͺ¨: https://codepen.io/OpenGG/pen/bxEqKL
λλμ΄ λ¬Έμ κ° νμ λ°μνμ§ μλλ€λ κ²μ μκ³ μμ΅λλ€. κ° 10 μμ²λ§λ€ μ½ 1-2 λ²μ λλ€ (λμΌν API, λμΌν μλ΅)
@OpenGG React-Nativeμμ λ°μν©λλ€. μΉ μ±μ μλ²½νκ² μλν©λλ€.
@nighttiger1990
μμ€ν¬μμ μ¨λΌμΈ λ°λͺ¨λ₯Ό λ§λ€κ³ 곡μ ν μ μμ΅λκΉ? μ΄ λ°λͺ¨λ Axios λλ RNμ΄ μ΄ λ¬Έμ λ₯Ό μΌμΌν€λμ§ μ¬λΆλ₯Ό νμΈνκΈ° μν΄ Axios λ° XMLHttpRequestμ λν΄ λμΌν μμ²μ μνν΄μΌ ν©λλ€.
@OpenGG λ©μΌμ μ£Όμ€ μ
https://github.com/nighttiger1990/axiosBug.git
μ΄ λ¬Έμ μ νμ΄μ΄ μμ΅λκΉ? λλ μ§λ©΄νλ€
@Druthiλ μ΄μ '
λͺ¨λ μ λ°μ΄νΈ?
μ΄κ²μ κ·νμ κ²½μ°κ° μλ μλ μμ§λ§ μ κ²½μ°μλ λ€μκ³Ό κ°μ΅λλ€.
λ΄ API μλ΅ λ¬Έμμ΄μ μ ν¨ν JSONμ΄ μλλ―λ‘ axiosλ JSONμΌλ‘ ꡬ문 λΆμν μ μμΌλ©° λμ μμ λ¬Έμμ΄μ λ°νν©λλ€.
λ΄ μ±(redux-saga,axios)μ webpack4λ‘ λ§μ΄κ·Έλ μ΄μ
νμΌλ©° μ΄μ response.dataλ κ°μ²΄ λμ λ¬Έμμ΄μ
λλ€. λ΄κ° λ§λ λ§μ΄κ·Έλ μ΄μ
λ³κ²½ μ¬νμ μ±κ³΅μ μΌλ‘ μ»΄νμΌνκΈ° μν΄ μ΅μνλ©λλ€.
ν¨ν€μ§.json
"μΉν©": "^4.29.6",
"webpack-cli": "^3.3.0",
"webpack-dev-middleware": "^3.6.1",
"webpack-dev-server": "^3.2.1"
"νμΌ λ‘λ": "^3.0.1",
webpack-config.js
μΆκ° λͺ¨λ: module.exportsμ 'κ°λ°'
μ£Όμ μ²λ¦¬λ μμ: true, devServerμμ
json-loader μ£Όμ μ²λ¦¬
JSON.parse(response.data)λ₯Ό μ€ννλλ° JSONμ΄ μμλμμ΅λλ€. (μκΈ°μΉ μμ ν ν°: JSON μμΉ 8181)
"municipality": "ddrNote": "" should be
"municipality": "",
"addrNote": ""
response.dataμ JSONμ΄ OK(κ°μ²΄)μΈ λ§μ΄κ·Έλ μ΄μ μ webpack3 μ½λμ λΉκ΅νμ΅λλ€. λ°λΌμ λ§μ΄κ·Έλ μ΄μ λ μ½λλ response.dataμμ JSONμ μμμν€λλ‘ κ΄λ¦¬νκ³ μμΌλ©° μ΄κ²μ΄ λ¬Έμμ΄λ‘ λνλλ μ΄μ μ λλ€. μ΄μ μ§λ¬Έμ JSONμ΄ μμλ μ΄μ μ λλ€.
"webpack-dev-server": "3.1.10"μΌλ‘ λ€μ΄κ·Έλ μ΄λνμ¬ λ¬Έμ λ₯Ό ν΄κ²°νμ΅λλ€.
3.1.10 μ΄μμ λ²μ μ λν μλ΅ μμμ μμΈμΈ devServer νλ‘μκ° μμ΅λλ€.
@petercutting νλ‘λμ νκ²½μμλ λ¬Έμ κ° λλ κ², κ΄μ°°νμ§ λͺ»νμ ¨λμ?
@nyilmaz λ΄ λ¬Έμ λ webpack-dev-serverλ‘ μΈν΄ λ°μνμ΅λλ€. webpack-dev-serverλ νλ‘λμ νκ²½μμ μ¬μ©λμ§ μμ΅λλ€.
@petercutting webpack-dev-serverμ λν λ¬Έμ λ₯Ό μ΄μμ΅λκΉ? λλ μ°Ύμ μ μμλ€.
@goodmorninggoaway κΈ°μ΅μ΄ μλ
webpack-dev-server λ¬Έμ μ μκ΄μμ΄ Axiosλ JSON.parse
μμΈλ₯Ό μ‘°μ©ν μΌμΌμλ μ λ©λλ€. λ§μ£ ?
λ°±μλμμ μλͺ»λ νμμ JSONμ μ μ‘νμ¬ μ±μ κ²¬κ³ μ±μ ν
μ€νΈνκ³ μμμ΅λλ€. Axios μμ²μ JSON λμ½λ©μ μλμΌλ‘ μ€ν¨ν©λλ€. content-type
ν€λλ μ¬μ ν "application/json"
λμ΄ μμ§λ§ response.data
λ νμ±λμ§ μμ μμ λ¬Έμμ΄μ΄κ³ νμ μ‘°μΉλ‘ λ΄ μ±μ΄ μκΈ°μΉ μκ² μΆ©λν©λλ€.
λ³μ΄ 60,000κ° μλ λΌμ΄λΈλ¬λ¦¬μ λ°λ λμ κ·Έλ° κΈ°λ³Έ λ²κ·Έκ° μλ€λ κ²μ μ λ§ λ―ΈμΉ μ§μ λλ€.
webpack-dev-server λ¬Έμ μ μκ΄μμ΄ Axiosλ JSON.parse μμΈλ₯Ό μ‘°μ©ν μΌμΌμλ μ λ©λλ€. λ§μ£ ?
μμ ν μ ν¨
λ°μ λ€μ΄ν°λΈμ λν μ΄ λ²κ·Έμ λν μ λ°μ΄νΈκ° μμ΅λκΉ!?
μλ²μ json μλ΅μ΄ μ ν¨νμ§ μμ λ μ΄λ° μΌμ΄ λ°μνλ€λ κ²μ λ°κ²¬νμ΅λλ€. https://jsonlint.com/ κ³Ό κ°μ json μ ν¨μ± κ²μ¬κΈ°λ₯Ό μ¬μ©νμ¬ json νμμ΄ μ¬λ°λ₯Έμ§ νμΈνμμμ€.
μ€λ₯ μΌν€λ λ¬Έμ κ° μΆμ λκ³ μμ΅λλ€. λ³Έμ§μ μΌλ‘ μ€λ³΅λλ λ¬Έμ μ΄λ―λ‘ μ΄ λ¬Έμ λ₯Ό μ’ λ£νκ² μ΅λλ€.
μ§λ¬Έμ΄ μλ κ²½μ° λ¬ΈμνμΈμ.
@fed135 κ΄λ ¨ λ¬Έμ κ° μμΌλ©΄ λ§ν¬ν΄ μ£ΌμΈμ. κ°μ¬ν©λλ€.
μμ§ ν΄κ²°ν μ¬λμ΄ μλμ?, μ λ laravelμ APIλ‘ μ¬μ©νκ³ μμΌλ―λ‘ μλ΅μ λ΄ μ±μ 보λ΄κΈ° μ μ κΈ°λ‘νμ΅λλ€. κΈ°λ‘λ μλ΅μ μ ν¨ν JSONμ΄μ§λ§ μμ λ μλ΅μ λμ λ§μ§λ§ "}" μ€κ΄νΈκ° λλ½λμ΄ μλͺ»λ μλ΅μ΄ λ©λλ€. μ΄κ²μ΄ λ΄ λͺ¨λ°μΌ μ±μμ μ μ΄λ° μμΌλ‘ μλνλμ§ λͺ¨λ₯΄κ² μ΅λλ€. axiosλ₯Ό μ¬μ©νλ νλ‘ νΈ μλ μ±λ μ λλ‘ μλνκ³ μ°νΈ λ°°λ¬λΆμμλ μλνμ§λ§ μ μλν©λλ€. μ΄λ€ μμ΄λμ΄ λλ μ루μ pls??
λ°μ΄ν°κ° λ무 μ»€μ§ λ λ°μν©λλ€ :( λ°μ΄ν° λ°°μ΄μ΄ μκΈ° λλ¬Έμ λ¬Έμ κ° μμμ΅λλ€!
@matinzd λ΄ λ°μ΄ν°μ νμ΄μ§λ₯Ό λ§€κΈ°κ³ 20κ°λ§ λ°νν©λλ€.
@matinzd λ° λν λ΄ fronend μ±μ λμΌν λμ μ μ¬μ©νλ©° λ°μ λ€μ΄ν°λΈκ° μλ λͺ¨λ°μΌ μ±λ§ λλλ‘ κ²½ννμ§ μμ΅λλ€.
@fed135 νμ μ‘°μΉλ‘ μΆμ νκΈ°μ μ ν©ν λ¬Έμ μ λκΉ? #61
λ΄ laravel APIκ° ν¨κ» λ¬Έμμ΄λ‘ λμ΅λλ€.
λ§μΉ¨λ΄ λ΄ ν΄κ²°μ±
μ μ°Ύμμ΅λλ€.
λ΄κ° μ»μ λ°μ΄ν°λ ===
λλ κ°μ μ€λ₯κ°μλ€
:(
λμΌν λ¬Έμ κ° μμ΅λλ€. jsonlint.comμμ νμΈν ν jsonμ΄ μλμ κ°μ΄ ꡬ문 λΆμν μ μλ NaN
μ λ°μ΄ν°κ° μμ΅λλ€. λ°λΌμ λ°±μλκ° μ ν¨ν JSON λ°μ΄ν°λ₯Ό μ μ‘νλμ§ νμΈν΄μΌ ν©λλ€.
Error: Parse error on line 186:
..., "position_name": NaN, "group_name":
----------------------^
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', got 'undefined'
κ°μ μ€λ₯, λκ° κ³ μΉ μ μμ΅λκΉ?
βοΈ μ΄ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ λΉ λ₯Έ PRμ νμ΅λλ€. λμμ΄ λκΈ°λ₯Ό λ°λλλ€.
axios 0.19.2λ₯Ό μ¬μ©νμ¬ λ°μ λ€μ΄ν°λΈμμ μ΄ λ¬Έμ κ°μ Έμ€κΈ°
λ¬Έμ μ λν μ
λ°μ΄νΈκ° μμ΅λκΉ?
λλμ΄ λμΌν λ¬Έμ κ° μμ΅λλ€. λλμ΄ λ¬Έμ λ₯Ό ν΄κ²°νμ΅λλ€ axiosμ λ°©λ²μ λ³κ²½νμμμ€. 'GET'λ©μλκ°μλ κ²½μ°μ΄ λ¬Έμ λ₯Ό μ»μ μ μκΈ° λλ¬Έμ λ³Έλ¬Έμ λ³΄λΌ μ μμ΅λλ€.μ΄ λ¬Έμ λ₯Ό ν΄κ²°νλ €λ©΄ 'POST'λ‘ λ³κ²½ν΄μΌν©λλ€. μΌνλ€
κ°μ₯ μ μ©ν λκΈ
μλ²μ json μλ΅μ΄ μ ν¨νμ§ μμ λ μ΄λ° μΌμ΄ λ°μνλ€λ κ²μ λ°κ²¬νμ΅λλ€. https://jsonlint.com/ κ³Ό κ°μ json μ ν¨μ± κ²μ¬κΈ°λ₯Ό μ¬μ©νμ¬ json νμμ΄ μ¬λ°λ₯Έμ§ νμΈνμμμ€.