問題の出典:axiosを使用して、およびJava FBIは、その転送インターフェースサーバは常にパラメータデータを取得した、だけでなく、ネットワークは本当に、唯一の物品をデータを渡す確認してください。
対価VUE-axios $アヤックスに基づいた方法で要求し、データ伝送の両方の
Javaへ、例えば、データ送信元:
初めは、Javaは、通信の前後端を達成するために、HTTPプロトコルでデータ転送ルールの開発が従わなければならない可能にします。
1)のみ、データ伝送、Numberオブジェクト列またはバイナリ形式のストリームデータの伝送を可能にするように許可されていません。
2)フォーマット文字列は、データ送信のコンテンツタイプ、すなわち、コンテンツタイプを指定し、以下の通りであります:
a)は、下地のXMLHttpRequestのデフォルトコンテンツタイプがtext / plainである;のcharset = UTF- 8
である:データは"AAAA"であることができる、 "[12313] 、{dsafdsafsd:12313}"
B)を形成する天然の形態の送信、文字列データが追加されるのXMLHttpRequestルールチェックが、
即ち、キー値にデータ列がパラメータを区別するために、実施例を提示する必要があり、その後、キーと値のペアの概念が現れます。
など離間&キーと値のペア、:ユーザー名= 1111&パスワード= 2222
データのタイプと前の区別のために、コンテンツタイプを変更すると、アプリケーション/ X-WWW-フォーム-であり、 URLエンコード
入力への結合の名前、値値は、離間したとの複数の入力
<FORM>
<入力名=「ユーザ名」値=「1213」/>
<入力名=「パスワード」値=「321」/>
</フォーム>
時間、データを形成するための全ての取得のキー入力を提出する:「= 1213ユーザ名&パスワード = 321」が
背景に送信され、受信した文字列の背景を、
C)は、インターネットの発展に伴い、データ伝送や、より複雑で、フォームは、需要を満たすには不十分でした。
したがってAJAXが発生し、まずフォーム提出形態の機能を実現
アプリケーション/ X-WWW-フォーム- 、すなわちコンテンツタイプを URLエンコード、 およびデータ伝送フォーマットは、キーと値のペアです。
しかし、書き込みモードで、データをオブジェクトとして書き込まれ、文字列キーの内部実装にオブジェクト
一定の期間を開発しました、キーと値のデータ列を表現するための新しい方法があり、JSONと呼ばれる
JSON形式の文字列には、サーバのパラメータに簡単にアクセスできます。
AJAXは、送信パラメータのこの種を達成した、
AJAXデータ次いで:{ユーザー名:1213パスワード :321}、
最終的な送信があるJSON.stringify(データ)=> "{ "ユーザ名"1213"パスワード「321} 「
サーバー、JSON.parse(データ)は、データオブジェクトを得ました
修正のContent-Typeアプリケーション/ JSONのデータ形式のこの種を区別するために、
d)に、一定の期間を開発し、単純な文字列の送信が満たされず、ファイル、WordやExcel、TXT、画像、ストリーミングドキュメント転送したいた
内容でのバイナリデータ伝送で指定されたデータ形式を提案
し、マルチパート/フォームデータのコンテンツタイプを変更します
E).....
要約コンテンツ・タイプ:
1)テキスト/プレーン;のcharset = UTF-8。
2)ファイルアプリケーション/ x-www-form-urlencodedでブラウザいるFormDataを反映
3)アプリケーション/ JSONブラウザrequestPayloadが反映
4)マルチパート/フォームデータ。
5。 )。。。。。。
前のJavaサーバ、シンプル、所定のデータ形式のためにコードが送信された文字列のアプリケーション/ X-WWW-フォーム- urlエンコード、
そう$アヤックスとフォーム送信フォームは、デフォルトのアプリケーション/ X-WWW-フォーム-ある URLエンコード
そして、バネのような様々なJavaフレームワーク、その後の出現は、このようなアプリケーション/ JSONなどの伝送パラメータ、さまざまな方法で解決することができ
、三代アヤックス次の第2世代/ AxiosのVUEと同様に、デフォルトのContent-Typeはアプリケーション/ JSONで変更します、
例:
ヴュープロジェクトAxios使用される場合、Javaの兄弟は、パラメータを受信しない場合、
1)コンテンツタイプ、ファイルアプリケーション/ X-form-urlencodedでWWW-の種類修正しなければならない
2)モジュール適量介してキーデータフォーマットの減少、データ形式を変換する(インストールする必要、ノードが来ることはありません)
ここで、インターセプタに配置されている:(以下、その具体的な状況)輝くプロセス
axios.defaults.headers.post [ 'のContent-Type'] =「アプリケーション/ x-www-form-urlencodedで;のcharset = UTF- 8「;
axios.interceptors.request.use(設定=> {
()config.method === 'ポスト'であれば{
config.data = qs.stringify(config.data);
}
戻り設定
}、エラーが=> {
//ですかリクエストエラーで何か
Promise.reject(エラー)
})
Ajaxの他のクラスにも同じことを解決します。