問題タブ [restful-url]

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.

0 投票する
2 に答える
3247 参照

ruby-on-rails - Ruby on Rails アプリケーションで RESTful URL パラメータをどのように処理しますか?

非常に単純な RESTful Rails アプリケーションを扱っています。User モデルがあり、更新する必要があります。Rails コーダーは次のことを行います。

そして、REST について私が理解していることから、この URL 要求は機能するはずです。

ただし、各 URL パラメーターは「params[:user]」ではなく変数「params」に解析されるため、機能しないことは明らかです。

今のところハック的な修正がありますが、人々が通常これをどのように処理するかを知りたかったのです。

ありがとう

0 投票する
5 に答える
1410 参照

php - Restfulは、Webサービスのみを対象としていますか、それともWebサービスとWebページの両方を対象としていますか?

PHPのRestfulチュートリアルをたくさん読みました。

(RoRを使用しない理由については詳しく説明したくありません。これは、チームがPHPに精通しているためです)

APIを使用するように将来拡張することを計画しているので、RestfulWebサービスを実装することが重要であると読みました。

私は次のようなチュートリアルを見てきました

http://www.gen-x-design.com/archives/create-a-rest-api-with-php/

どうやら安らかなはWebサービスのためのものです。

ウェブページはどうですか?それらもRESTFULにすることができますか?

答えが「いいえ」の場合は、この線を超えないで、教えてください。ありがとうございました。

URLをRESTFULURLのように見せることは、単にmod_rewriteを使用することです。ただし、確かに、RESTfulアーキテクチャは、URLの見栄えを良くするだけではありません。

たとえば、list.phpというWebページにアイテムのリストがあります。各アイテムの横には削除リンクがあります。例:list.php?id = 1&deleteitem

誰かがlist.php?id = 1&deleteitemリンクをクリックすると、もちろん同じlist.phpファイルに戻って、$_GETのparamdeleteitemを確認します。

検出された場合、$_GETのパラメータIDに基づいてデータベースから削除します。

その後、パラメータなしでlist.phpにリダイレクトします。

このフロー全体をRESTFULにするにはどうすればよいですか?

RESTでは、何かを削除するには、HTTPリクエストメソッド(DELETE)を使用する必要があるためです。

明らかに私のリンクでは、それらはすべて単に単純です<a href="list.php?id=1&deleteitem">Delete</a>

教えてください。

私のプログラミングはそれほど強力ではないので、与えられたアドバイスが可能な限り素人であることができればそれは良いことです。

ありがとうございました。

編集

フォローアップの質問が2つあります。

質問1)これはページング付きのアイテムのリストですが、RESTfulにしたい場合、URLはどのようになりますか?

質問2)リスト内のすべての項目の横にDELETEリンクを配置しているので、今は理解しています。

代わりは。

ただし、フォームはどこに投稿する必要がありますか?アイテムのURL?/ items / {item-id}

しかし、データベースの行を正常に削除した後、成功メッセージを表示するこのリストページに戻りたいと思います。

また、このリストページを成功メッセージで更新するときにポップアップメッセージを表示しないようにします。

このlist.phpURLに投稿し直すと、RESTfulではありませんか?以下の回答から、各アイテムは独自のURLを必要とするリソースであると言われているためです。

教えてください。ありがとうございました。

0 投票する
3 に答える
7253 参照

web-services - RESTサービス-データ以外の「アクション」を公開する

一般的なエンティティの相互作用を行うためにRESTを使用する方法を理解しています-URL名を使用してエンティティにマップし、HTTP動詞を使用してそれらのエンティティのアクションにマップします。しかし、RPCのような「アクション」を見る一般的に受け入れられている方法は何ですか?

たとえば、デバイスをリセットするためのコマンドを送信したいとしますか?ここには本当の「エンティティ」はありませんか、POSTのようなことをしますかhttp://mydevice/device/reset?

0 投票する
3 に答える
4520 参照

spring - How do I create a Spring 3 + Tiles 2 webapp using REST-ful URLs?

I'm having a heck of a time resolving URLs with Spring 3.0 MVC. I'm just building a HelloWorld to try out how to build a RESTful webapp in Spring, nothing theoretically complicated.

All of the examples I've been able to find are based on configurations that pay attention to file extensions ("*.htm" or "*.do"), include an artificial directory name prefix ("/foo") or even prefix paths with a dot (ugly), all approaches that use some artificial regex pattern as a signal to the resolver. For a REST approach I want to avoid all that muck and use only the natural URL patterns of my application. I would assume (perhaps incorrectly) that in web.xml I'd set a url-pattern of "/*" and pass everything to the DispatcherServlet for resolution, then just rely on URL patterns in my controller.

I can't reliably get my resolver(s) to catch the URL patterns, and in all my trials this results in a resource not found error, a stack overflow (loop), or some kind of opaque Spring 3 ServletException stack trace — one of my ongoing frustrations with Spring generally is that the error messages are not often very helpful.

I want to work with a Tiles 2 resolver. I've located my *.jsp files in WEB-INF/views/ and have a single line index.jsp file at the application root redirecting to the index file set by my layout.xml (the Tiles 2 Configurer).

I do all the normal Spring 3 high-level configuration:

...followed by all sorts of combinations and configurations of UrlBasedViewResolver, InternalResourceViewResolver, UrlFilenameViewController, etc. with all manner of variantions in my Tiles 2 configuration file. Then in my controller I've trying to pick up my URL patterns. Problem is, I can't reliably even get the resolver(s) to catch the patterns to send to my controller.

This has now stretched to multiple days with no real progress on something I thought would be very simple to implement. I'm perhaps trying to do too much at once, though I would think this should be a simple (almost a default) configuration. I'm just trying to create a simple HelloWorld-type application, I wouldn't expect this is rocket science.

Rather than me post my own configurations (which have ranged all over the map), does anyone know of an online example that: shows a simple Spring 3 MVC + Tiles 2 web application that uses REST-ful URLs (i.e., avoiding forced URL patterns such as file extensions, added directory names or dots) and relies solely on Spring 3 code/annotations (i.e., nothing outside of Spring MVC itself) to accomplish this? Is there an easy way to do this?

Thanks very much for any help.

0 投票する
1 に答える
1537 参照

rest - REST呼び出しでパラメーター値としてURIを使用する際のベストプラクティス

一部のリソースをクエリパラメーターでフィルタリングできるRESTAPIを設計しています。場合によっては、これらのフィルター値は同じRESTAPIからのリソースになります。これにより、長くてかなり読みにくいURIが作成されます。URIはプログラムで作成および操作されることを目的としているため、これ自体はそれほど問題にはなりませんが、デバッグに手間がかかります。フィルタ値として使用されるURIへのショートカットを許可することを考えていましたが、これがRESTアーキテクチャに従って許可されているかどうか、およびベストプラクティスがあるかどうか疑問に思います。

例えば:

Javaクラスを取得するリソースがあります。次に、次のリクエストですべてのJavaクラスが提供されます。

Javaクラスのすべてのサブクラスが必要Collectionだとすると、次のリクエストを使用します。

その要求は、私VectorとJavaクラスArrayListの他のすべてのサブクラスを返します。Collection

ただし、そのURIはかなり長いです。hsのエイリアスとして許可することで、すでに短縮できhas-supertypeます。これは私に与えるでしょう:

より短いURIを許可する別の方法は、URIプレフィックスのエイリアスを許可することです。たとえばclass、URIプレフィックスのエイリアスとして定義できますhttp://example.org/api/v1/class/。それは私に次の可能性を与えるでしょう:

もう1つの可能性は、クラスエイリアスを完全に削除し、パラメータ値の前に常にプレフィックスを付けるhttp://example.org/api/v1/class/ことです。これが私がサポートする唯一のものだからです。これにより、のすべてのサブタイプのリクエストが次のようにCollectionなります。

元のリクエストURIのこれらの「簡略化」は、RESTアーキテクチャの原則に準拠していますか?それとも私はただディープエンドを離れたのですか?

補遺:URIには一度に複数のフィルターが含まれる場合があります。異なるパラメーターとして、または単一のパラメーターの値のリストとして。http://example.org/api/v1/packages/a/b/c「インターフェイスXおよび/またはインターフェイスYを実装するすべてのクラス」または「インターフェイスXを実装し、パッケージABCに含まれるすべてのクラス」(パッケージも次のようなURIにアドレス指定可能)の方針に沿って考えてください。

0 投票する
2 に答える
471 参照

ruby-on-rails - Rails のネストされた URL に関する質問

Rails の RESTful URL に問題があります。

私は site.com/services の URL を持っています。そのカテゴリの下にサブページが必要です。それは、site.com/services/arquitecture、site.com/services/plumbing などです。

そのカテゴリの下でサービスを提供しているページは「静的」.rhtml ファイルであり、それらを同じコントローラーに配置したいと考えています。

これを行う方法はありますか?ネストされたリソースを試してみましたが、完全に理解するのは難しいと思います。

ありがとう

0 投票する
1 に答える
2137 参照

.htaccess - .htaccess を使用した複数のクエリ パラメータ RESTful URL

作業中の Web サイトに次の RESTful URL を使用したいと考えています。

.htaccessでこれを達成する方法を教えてください。

オスカー

0 投票する
13 に答える
165721 参照

rest - オブジェクト内のアイテムの総数を返すための最良の RESTful メソッドは何ですか?

私が関与している大規模なソーシャル ネットワーキング Web サイト用の REST API サービスを開発しています。これまでのところ、うまく機能しています。GETPOSTPUTおよびDELETEリクエストをオブジェクト URL に発行して、データに影響を与えることができます。ただし、このデータはページングされます (一度に 30 件の結果に制限されます)。

ただし、API を介して、たとえばメンバーの総数を取得するための最良の RESTful な方法は何でしょうか?

現在、次のような URL 構造にリクエストを発行しています。

  • /api/members — メンバーのリストを返します (上記のように一度に 30 個)
  • /api/members/1 — 使用されるリクエスト方法に応じて、単一のメンバーに影響します

私の質問は、同様の URL 構造を使用して、アプリケーション内のメンバーの総数を取得するにはどうすればよいですか? 明らかに、idフィールドのみを要求して (Facebook の Graph API と同様)、結果をカウントしても、30 個の結果のスライスしか返されないため、効果がありません。

0 投票する
1 に答える
1260 参照

java - Spring MVC:';'を含むRESTfulURIのコントローラーメソッドの正しいアノテーション

RESTful APIを設計し、次のURIを使用したいと思います

例えば

Spring MVCでのそのようなメソッドの適切なアノテーションは何ですか?これは次の1つで大丈夫ですか?

これが大丈夫なら-何のために@MaskFormat("###-##-####")良いですか?