質問するログイン新規登録

回答編集履歴

1

追伸

2018/01/17 01:20

投稿

退会済みユーザー
answer CHANGED
@@ -1,1 +1,17 @@
1
- url に設定した文字列をパーセントエンコーディングして、ダブルクォート(またはシングルクォート)で囲ってみたらどうなりますか?
1
+ url に設定した文字列をパーセントエンコーディングして、ダブルクォート(またはシングルクォート)で囲ってみたらどうなりますか?
2
+
3
+ 【追伸】
4
+
5
+ エンコーディングの方法ですが、具体的には JavaScript の encodeURI を使ってみてください。
6
+
7
+ 自分が検証した限りでは、使わないわないと IE の場合は Shift_JIS のパーセントエンコーディングになり、サーバー側で正しく取得できませんでした。
8
+
9
+ url: "api/heroes/日本語"
10
+  ↓
11
+ GET http://localhost:52314/api/heroes/%93%FA%96%7B%8C%EA HTTP/1.1
12
+
13
+ url: encodeURI("api/heroes/日本語")
14
+  ↓
15
+ GET http://localhost:52314/api/heroes/%E6%97%A5%E6%9C%AC%E8%AA%9E HTTP/1.1
16
+
17
+ ただし、Firefox, Chrome の場合は encodeURI なしでも UTF-8 のパーセントエンコーディングになるのでサーバー側で正しく取得できました。なのでブラウザ依存のようですが。