[解決済み] RESTful WebServiceにファイルや関連データをJSONで投稿する。
2022-03-23 19:46:01
質問
これはおそらく愚かな質問になるだろうが、私はそのような夜を持っている。あるアプリケーションで私はRESTful APIを開発しており、クライアントがJSONとしてデータを送信することを望んでいます。このアプリケーションの一部では、クライアントがファイル(通常は画像)と画像に関する情報をアップロードする必要があります。
これが1回のリクエストでどのように起こるのか、追跡するのに苦労しています。 ファイルデータをBase64してJSON文字列にすることは可能でしょうか? サーバーに2回投稿する必要があるのでしょうか? 私はこのためにJSONを使用しない方が良いですか?
余談ですが、私たちはバックエンドにGrailsを使用しており、これらのサービスはネイティブのモバイルクライアント(iPhone、Androidなど)からアクセスされています。
どのように解決するのですか?
同じような質問をこちらでさせていただきました。
REST ウェブサービスを使用して、メタデータ付きのファイルをアップロードするにはどうすればよいですか?
基本的には3つの選択肢があります。
- Base64でエンコードすると、データサイズが約33%増加し、エンコード/デコードのためにサーバーとクライアントの両方で処理のオーバーヘッドが発生します。
-
ファイルを最初に
multipart/form-data
POSTし、クライアントにIDを返す。その後、クライアントがメタデータをIDとともに送信し、サーバーがファイルとメタデータを再関連付けする。 - メタデータを先に送信し、クライアントにIDを返します。その後、クライアントがそのIDを持つファイルを送信し、サーバーがファイルとメタデータを再関連付けします。
関連
-
[解決済み] cURLでJSONデータをPOSTするにはどうすればよいですか?
-
[解決済み] HTTP GET(リクエストボディ付き
-
[解決済み] JSONファイルをprettyprintする方法は?
-
[解決済み] JSONデータをファイルに書き込むにはどうしたらいいですか?
-
[解決済み] バイナリデータをJSON文字列で。Base64より優れたもの
-
[解決済み] RESTアプリケーションはステートレスであることが前提である場合、セッションはどのように管理するのですか?
-
[解決済み】なぜPythonはこのJSONデータをパースできないのですか?[終了] PythonがこのJSONデータをパースできないのはなぜですか?
-
[解決済み】RESTウェブサービスを使用して、メタデータを含むファイルをアップロードするにはどうすればよいですか?
-
[解決済み】REST API - ファイル(画像)処理 - ベストプラクティス
-
[解決済み] ネストされたJSONオブジェクトのアンマーシャリング
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] JSON Schemaにおける "required "と "optional "の違いについて
-
[解決済み] 複数の配列を持つJSONオブジェクトを作るにはどうしたらいいですか?
-
[解決済み] UnixツールでJSONをパースする
-
[解決済み] RESTリソースの命名規則はSingularとPluralのどちらを使用すべきですか?
-
[解決済み] JSONでnullを表現する
-
[解決済み] JSONオブジェクトをTypeScriptのクラスにキャストする方法を教えてください。
-
[解決済み] Ajaxを使用して1つのフォームでデータとファイルの両方をアップロードする?
-
[解決済み】RESTウェブサービスを使用して、メタデータを含むファイルをアップロードするにはどうすればよいですか?
-
[解決済み】REST API - ファイル(画像)処理 - ベストプラクティス
-
[解決済み] PostgresでJSONフィールドにインデックスを作成するには?