Alamofire: 일뢀 μ–Έμ–΄/지역 쑰합에 λŒ€ν•΄ Accept-Language 헀더가 잘λͺ»λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2017λ…„ 04μ›” 07일  Β·  3μ½”λ©˜νŠΈ  Β·  좜처: Alamofire/Alamofire

AlamofireλŠ” 언어와 μ§€μ—­μ˜ 쑰합인 Locale 의 preferredLanguages 속성을 μ‚¬μš©ν•˜μ—¬ Accept-Language 헀더λ₯Ό μƒμ„±ν•©λ‹ˆλ‹€.

이것은 ν‘œμ€€ μ‘°ν•©μ—μ„œ 잘 μž‘λ™ν•©λ‹ˆλ‹€: en-US , fr-FR , fr-CA ...

κ·ΈλŸ¬λ‚˜ μ‚¬μš©μžκ°€ 지역과 μΌμΉ˜ν•˜μ§€ μ•ŠλŠ” μ–Έμ–΄λ₯Ό μ„ νƒν•˜λ©΄ Accept-Language 둜 μ‚¬μš©ν•  수 μ—†λŠ” 쑰합을 μ–»κ²Œ λ©λ‹ˆλ‹€.

예λ₯Ό λ“€μ–΄ λ‹€μŒ μ‘°ν•©μœΌλ‘œ κ΅¬μ„±λœ μž₯치λ₯Ό 예둜 λ“€μ–΄ λ³΄κ² μŠ΅λ‹ˆλ‹€.

  • μ–Έμ–΄: ν”„λž‘μŠ€μ–΄
  • 지역: λ―Έκ΅­

첫 번째 preferredLanguages λŠ” fr-US 이며 μ‹€μ œ μ–Έμ–΄λ₯Ό λ‚˜νƒ€λ‚΄μ§€ μ•ŠμŠ΅λ‹ˆλ‹€(λ―Έκ΅­μ—μ„œ μ‚¬μš©λ˜λŠ” ν”„λž‘μŠ€μ–΄μ˜ νŠΉμ • 버전이 μ—†μŒ).

λ”°λΌμ„œ μƒμ„±λœ Accept-Language μ—λŠ” λ§Žμ€ 경우 μΈμ‹λ˜μ§€ μ•ŠλŠ” 값이 ν¬ν•¨λ©λ‹ˆλ‹€. λ‹€μŒμ€ μœ νš¨ν•œ μ½”λ“œ λͺ©λ‘μž…λ‹ˆλ‹€ .

ν”„λž‘μŠ€/λ―Έκ΅­ μž₯μΉ˜μ—μ„œ AlamofireλŠ” λ‹€μŒ Accept-Language μƒμ„±ν•©λ‹ˆλ‹€. fr-US;q=1.0, en-US;q=0.9
μ‚¬μš© κ°€λŠ₯ν•œ μ΅œμƒμ˜ λ‘œμΌ€μΌμ„ 찾으렀고 ν•˜λŠ” 이 PHP ν•¨μˆ˜ μ—μ„œ μ œλŒ€λ‘œ μΈμ‹ν•˜μ§€ λͺ»ν•©λ‹ˆλ‹€. 그것은 λ°˜ν™˜ en λŒ€μ‹  fr .

λŒ€μ‘°μ μœΌλ‘œ Safari iOSλŠ” μœ νš¨ν•œ Accept-Language λ₯Ό 보내야 ν•©λ‹ˆλ‹€.

ν”„λž‘μŠ€/λ―Έκ΅­ κΈ°κΈ°μ—μ„œ μ „μ†‘λœ Accept-Language λŠ” fr-fr μž…λ‹ˆλ‹€. (λ‹€μŒμ€ λΈŒλΌμš°μ €μ—μ„œ 보낸 HTTP 헀더λ₯Ό λΉ λ₯΄κ²Œ μ•Œ 수 μžˆλŠ”

μ΄μƒμ μœΌλ‘œ AlamofireλŠ” Safari와 λ™μΌν•œ Accept-Language λ₯Ό 생성해야 ν•©λ‹ˆλ‹€.

  • Xcode 버전: 8.2.1
  • iOS 버전: iOS 10
http headers question

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

μ•ˆλ…•ν•˜μ„Έμš” @simonliotier ,

μ—¬κΈ°μ—μ„œ μžμ„Έν•œ λ³΄κ³ μ„œλ₯Ό λ³΄λ‚΄μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€. κ°μ‚¬ν•©λ‹ˆλ‹€. 우리 λͺ¨λ‘κ°€ 염두에 두어야 ν•  것은 κ·€ν•˜μ˜ μ‚¬μš© μ‚¬λ‘€λŠ” fr-US μˆ˜μ‹ μ„ μ›ν•˜μ§€ μ•ŠλŠ” 반면 λ‹€λ₯Έ μ‚¬λžŒλ“€μ€ 받을 수 μžˆλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. μ μ ˆν•œ 맀핑을 μˆ˜ν–‰ν•˜κΈ° μœ„ν•΄ μ„œλ²„ μΈ‘μ—μ„œ 항상 fr-US λ₯Ό fr-FR 둜 λ³€ν™˜ν•  수 μžˆμ§€λ§Œ fr-FR λ₯Ό μ‚¬μš©μžκ°€ μ‹€μ œλ‘œ 가지고 μžˆλŠ” λ‘œμΌ€μΌλ‘œ λ³€ν™˜ν•˜λŠ” 방법을 κ²°μ½” μ•Œμ§€ λͺ»ν•  κ²ƒμž…λ‹ˆλ‹€. fr-US ν•©λ‹ˆλ‹€.

AlamofireλŠ” 기본적으둜 Accept-Language 만 μ„€μ •ν•˜μ§€λ§Œ νŠΉμ • μ‚¬μš© 사둀에 λŒ€ν•΄ μž¬μ •μ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ‚˜λŠ” μš°λ¦¬κ°€ μ‚¬μš©μžμ˜ λ‘œμΌ€μΌμ„ 더 일반적으둜 λ§Œλ“€λ €κ³  ν•˜λŠ” 것이 μ˜³λ‹€κ³  μƒκ°ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

건배. 🍻

λͺ¨λ“  3 λŒ“κΈ€

μ‹ κ³  κ°μ‚¬ν•©λ‹ˆλ‹€! κ·ΈλŸ¬λ‚˜ RFC 7231 μ—μ„œ μ΄λŸ¬ν•œ 쑰합을 κ³΅μ‹μ μœΌλ‘œ μ„€λͺ…ν•˜λŠ” λ¬Έμ„œλ₯Ό 찾을 수 μ—†μŠ΅λ‹ˆλ‹€. 당신은 우리λ₯Ό 가리킬 수 μžˆμŠ΅λ‹ˆκΉŒ? 그렇지 μ•ŠμœΌλ©΄ ν—ˆμš© κ°€λŠ₯ν•œ 쑰합에 λŒ€ν•œ κ°€λŠ₯ν•œ μ‘°ν•©μ˜ 정적 맡을 μœ μ§€ν•΄μ•Ό ν•  것 κ°™μŠ΅λ‹ˆλ‹€. μ΄λŠ” μš°λ¦¬κ°€ ν•˜κ³  싢지 μ•Šμ€ μΌμž…λ‹ˆλ‹€.

곡식 λͺ©λ‘λ„ 찾을 수 μ—†μŠ΅λ‹ˆλ‹€. Safariμ—λŠ” ν—ˆμš© κ°€λŠ₯ν•œ μ‘°ν•© λͺ©λ‘μ΄ μžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€. πŸ˜•

μ•ˆλ…•ν•˜μ„Έμš” @simonliotier ,

μ—¬κΈ°μ—μ„œ μžμ„Έν•œ λ³΄κ³ μ„œλ₯Ό λ³΄λ‚΄μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€. κ°μ‚¬ν•©λ‹ˆλ‹€. 우리 λͺ¨λ‘κ°€ 염두에 두어야 ν•  것은 κ·€ν•˜μ˜ μ‚¬μš© μ‚¬λ‘€λŠ” fr-US μˆ˜μ‹ μ„ μ›ν•˜μ§€ μ•ŠλŠ” 반면 λ‹€λ₯Έ μ‚¬λžŒλ“€μ€ 받을 수 μžˆλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. μ μ ˆν•œ 맀핑을 μˆ˜ν–‰ν•˜κΈ° μœ„ν•΄ μ„œλ²„ μΈ‘μ—μ„œ 항상 fr-US λ₯Ό fr-FR 둜 λ³€ν™˜ν•  수 μžˆμ§€λ§Œ fr-FR λ₯Ό μ‚¬μš©μžκ°€ μ‹€μ œλ‘œ 가지고 μžˆλŠ” λ‘œμΌ€μΌλ‘œ λ³€ν™˜ν•˜λŠ” 방법을 κ²°μ½” μ•Œμ§€ λͺ»ν•  κ²ƒμž…λ‹ˆλ‹€. fr-US ν•©λ‹ˆλ‹€.

AlamofireλŠ” 기본적으둜 Accept-Language 만 μ„€μ •ν•˜μ§€λ§Œ νŠΉμ • μ‚¬μš© 사둀에 λŒ€ν•΄ μž¬μ •μ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ‚˜λŠ” μš°λ¦¬κ°€ μ‚¬μš©μžμ˜ λ‘œμΌ€μΌμ„ 더 일반적으둜 λ§Œλ“€λ €κ³  ν•˜λŠ” 것이 μ˜³λ‹€κ³  μƒκ°ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

건배. 🍻

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰

κ΄€λ ¨ 문제

yamifr07 picture yamifr07  Β·  3μ½”λ©˜νŠΈ

Tulleb picture Tulleb  Β·  3μ½”λ©˜νŠΈ

solomon23 picture solomon23  Β·  3μ½”λ©˜νŠΈ

noear picture noear  Β·  3μ½”λ©˜νŠΈ

Footjy picture Footjy  Β·  3μ½”λ©˜νŠΈ