2017-07-18 13 views
0

私はサーバーに送信する必要がある画像を表すbase64文字列を持っています。すべてのajaxリクエストでは、URLを介してサーバーに送信するクエリ文字列にデータを追加するだけで、クエリ文字列/ url sortの制限は2,000文字に制限されます。まあ私のbase64文字列は約97,000文字ですので、どうすればこのことをサーバーに渡すことができますか?クライアント側からGoogle Appsスクリプト(サーバー)base64文字列に送信

POST - これはURLを使用し、2000文字に制限されます...そうですか? GET - 投稿と同じ...右ですか?

他に何ができますか?それをブロブに変換しますか?あなたが何をしているのか知っていたらどうしますか?私は笑いないので

お時間をいただきありがとうございます!

答えて

0

私はFormDataオブジェクトを使用する方が好きですが、それはかなり簡単です。きれいで滑らかなチュートリアルhereを見つけることができます。データを投稿するJSON

+0

私が見たものから、この戦略は、データを「シリアライズ」(フォームデータから、URLのキーと値のペアの文字列に変換)に問題のURLの一部であるクエリ文字列 - 私は90,000文字のURLを要求できません。または私は完全に間違っています –

0

用途:

fetch('url', { 
 
    method: 'post' 
 
    headers: new Headers({'Content-Type': 'application/json'}), 
 
    body: JSON.stringify({'payload': 'base64str'}) 
 
})

+0

私はこのエラーを受け取りました 'プリフライトリクエストへの応答はアクセスコントロールのチェックを通過しません: 'Access-Control-Allow-Origin'ヘッダーが要求されたリソース上にあります。したがって、原点「ヌル」はアクセスが許可されません。レスポンスにはHTTPステータスコード405があります。不透明なレスポンスが必要な場合は、CORSを無効にしてリソースをフェッチするためにリクエストのモードを 'no-cors'に設定してください。 –

+0

CORSを無効にしても問題ありません。どうすればいいですか? –

+0

@CotyEmbry init {mode: 'cors'}を使う必要があります。サーバー側では、どのバックエンドを使用するかによって異なりますが、ドメインに対してはcorsを有効にし、ヘッダーの「Content-Type」と「Access-Control-Allow-Origin」を許可する必要があります。 – T4rk1n

関連する問題