問題タブ [url-design]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
rest - REST はすべてのレコードと 1 つのレコードを結合しました
請求書を持つ REST エンドポイントを構築しています。すべての請求書の両方のリストを 3 つのレベルの説明で作成する必要があります (詳細はデフォルト、合計のみ、顧客情報を含むもの)。
また、より多くの情報を含む個々の請求書のエンドポイントを構築する必要があります。
私が考えていた
しかし、他の人が2つの異なるものを実装しているのを見たことがあります
これらすべてがRESTをカウントできることを読んだことから、私はリンク付きのものを作成する必要があることをすでに知っています。
私の質問は、より実用的な観点からのものです。たとえば、実装がより簡単で、より安全で、慣例により一般的です。
私はおそらくサーバー用のFlaskでpythonを使用し、それが問題になる場合は、私が作成するクライアントの1つがJQueryになります。
url - UI 状態を URL セグメント/パラメーターと Cookie またはセッション状態に保存する
URL 設計に関する議論を、意見や感情から研究、文書、事実に移すのに役立つ文書、RFC、ガイド、または調査を知っている人はいますか?
口座を選択できる従来の非 SPA HTML ベースの銀行アプリケーションを構築しているとします。現在選択されているアカウントは UI 状態です。この選択されたアカウントは、(少なくとも) 次の 2 つの方法で「保存」できます。
https://mybank.com/balance?accountID=23423498
またはのようなURLでhttps://mybank.com/accounts/23423498/balance
- Cookie やセッション状態など、他の場所で
https://mybank.com/accounts/balance
、現在選択されているアカウントの残高が何であれ表示されます。
#1 はディープ リンクと複数のタブを可能にしますが、#2 は特にそのような UI 状態の「ディメンション」が複数ある場合に、よりクリーンでシンプルな URL を生成し、実装をよりシンプルにします。実際には、このような UI 状態のディメンションは常に 1 ~ 3 あります。
私は意見を求めているわけではないので、この問題に関する私の個人的な意見が何であるかは問題ではありません。私の問題は、どちらの側も、いつ何を使用するかを明確にする信頼できるドキュメント、研究、または設計ガイドへのリンクを使用して、私たちの「意見」を裏付けることができないことです.
注: URL、Cookie、またはセッションがどのように機能するか、どこに保存されるかなどの技術的な詳細を探しているわけではありませんが、この情報をいつ URL に入れるべきか、いつ入れないべきかについての推奨事項についてです。
routes - ユーザーがナビゲートできない SPA ゲームのルートのベスト プラクティスは何ですか?
私は、プレイヤーが質問をして、最高の/面白い答えに投票する Web ゲームに取り組んでいます。ゲームは自動的にプレイヤーをさまざまなステージ間で移動します (例: 質問をする、質問に答える、回答に投票する...)。
各ゲームには固有の URL があります。ゲームに参加すると、現在のところURL は変更されません。これにはいくつかの欠点があります。主に、ブラウザーの履歴は 1 ページしかないため、特にモバイルでは誤ってゲームを終了しやすいという点です。再参加は簡単です。ユーザーはゲームの URL に再度アクセスするだけです。しかし、これは誰にとっても直感的ではありません。
私の質問は、ゲームが進行するにつれてパス/ルートを変更する方が良い方法である/{gameid}/questions
かどうか、またはおそらく問題に対する別の解決策があるかどうかです。
路線変更の理由
戻るボタンの動作が改善されました。現在、プレイヤーが反撃すると、ブラウザの履歴にその前のページがないため、ゲームを終了します。
ゲームステージ間でルートが変わる場合、打ち返しは
/{id}/answers
→<code>/{id}/questions→(redirect)→<code>/{id}/answersそれはより「慣用的」です。ページはゲームのステージごとにまったく異なるように見えるため、異なる URL を持つことは理にかなっています。
ルート変更に反対する理由
- それは「慣用的」ではありません!別の URL を持つということは、ユーザーがそれを変更してナビゲートできることを意味しますが、ゲームには常に 1 つの正しいページしかありません。に移動しようとする
/{id}/**
と、常ににリダイレクトされ/{id}/{the correct stage}
ます。それを維持することは、/{id}
より「リソースベース」に感じます。
直感でできることを目指しています。どんな入力でも歓迎します!