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

回答編集履歴

2

修正

2020/09/12 16:30

投稿

unhappychoice
unhappychoice

スコア1531

answer CHANGED
@@ -1,5 +1,9 @@
1
- REST が前提だと、パスはあくまでリソースを表すべきで、 `json` のような種別は別の部分入れがします。
1
+ > 現状/users/self/jsonのようにしていのです、これで問題ないでょうか?
2
2
 
3
+ そのような設計のアプリケーション、と決めるなら、それで問題ないと思います。
4
+
5
+ が、REST が前提だと、パスはあくまでリソースを表すべきで、 `json` のような種別は別の部分に入れる気がします。
6
+
3
7
  1. extension を利用する `/users/self` / `/users/self.html` / `/users/self.json` / ...
4
8
  2. パラメーターを利用する `/users/self?ext=html` / `/users/self?ext=json` / ...
5
9
  3. ヘッダを利用する `Accept: text/html` / `Accept: application/json` / ...

1

追記

2020/09/12 16:30

投稿

unhappychoice
unhappychoice

スコア1531

answer CHANGED
@@ -4,4 +4,12 @@
4
4
  2. パラメーターを利用する `/users/self?ext=html` / `/users/self?ext=json` / ...
5
5
  3. ヘッダを利用する `Accept: text/html` / `Accept: application/json` / ...
6
6
 
7
- 個人的には 1のケースが多いような気はしますが、どれを利用するかは完全に自由だと思います。
7
+ 個人的には 1のケースが多いような気はしますが、どれを利用するかは完全に自由だと思います。
8
+
9
+ ### 追記
10
+ > ここでのAPIは公開用ではなく、アプリケーション内部でリソースにアクセスするために設置するものです。
11
+
12
+ もしくは、根本から分けることもできました
13
+
14
+ 1. パス `http://example.com/users/self` / `http://example.com/api/users/self`
15
+ 2. ドメイン `http://web.example.com/users/self` / `http://api.example.com/users/self`