私は全く新しいnode.jsを公開しています。 私はクライアントのページでjavascriptを使っていくつかの計算を行っており、生成した数値の配列をnode.jsサーバーアプリケーションに送信したいと思います。フォームデータを送信しなければならないときは、フォームアクションを自分のルートに使用しました。今私は完全に失われてどこから始めるべきか分からない。私のルートにはどのようなコードを書くべきですか?クライアントアプリケーションからjs変数または配列を渡す方法は?クライアントからExpress apiに変数を渡す方法
答えて
サーバー上で実行されているExpressアプリケーションにデータの配列を送信するには、最も簡単な方法はJSONオブジェクトとして送信することです。 jQueryのを使用して簡単な例を以下に示す:
クライアントコード:
var your_calculated_array = []; // Set your calculated array here
$.ajax({
type: 'POST',
url: 'YOUR_EXPRESS_ENDPOINT',
data: { your_data: your_calculated_data },
dataType: 'json',
success: function (data) {
// Handle the response here
}
});
サーバーサイドコード(JSON体を解析するためにボディパーサーミドルウェアを使用して):
.....
var bodyParser = require('body-parser')
app.use(bodyParser.json());
app.post(YOUR_EXPRESS_ENDPOINT, function(req, res) {
var calculated_data = req.body.your_data
// ...
})
.....
それはサーバーの要求を行うのに役立ちますが、私はそれをテストしようとしていますが、データをしても、クライアントの{your_data: "test"}はサーバー とconsole.log(req.body.your_data)エンドポイントコンソールは常に定義されていません –
簡単な例
app.js
var express = require('express')
var app = express()
app.set('view engine', 'pug')
app.get('/', function (req, res) {
res.render('index')
})
app.post('/example_route', function (req, res) {
res.send({'msg': 'Hello World!'})
})
app.listen(3000, function() {
console.log('Example app listening on port 3000!')
})
ビュー/ index.pug
doctype html
html
head
title= 'HomePage'
script(src='https://code.jquery.com/jquery-3.2.1.min.js')
body
button(onclick='$.post("http://localhost:3000/example_route", function(data) {alert(data.msg);})') Click me!
このホームページは、サーバーにPOST要求を行い、CDNとのonclickイベントからjqueryのを含んでいます。
私はこれを試しましたが、このエラーが発生します:XMLHttpRequestはhttp:// localhost:3000/example-routeをロードできません。要求されたリソースに「Access-Control-Allow-Origin」ヘッダーが存在しません。したがって、原点「ヌル」はアクセスが許可されません。 –
これは、POST要求がデータを送信しているのと同じサイトから来ている必要があることを意味します。ブラウザのアドレスバーで、127.0.0.1:3000またはlocalhost:3000にアクセスしていますか?それが何であれ、ブラウザのアドレスバーとonclickリスナーコードで同じでなければなりません。 –
私はクライアントアプリケーションをどこにでもホスティングしていませんが、同じサーバー上で実行することなくこれを行うことは可能ですか? –
- 1. Express、ルートからクライアント側にあるJSファイルに変数を渡す方法
- 2. ExpressからJadeテンプレートに変数を渡す方法
- 3. データベースから変数を渡す方法|ノード| Express
- 4. express変数を.jade電子メールテンプレートファイルに渡す方法
- 5. nodejs module - express module.export - 変数を他のファイルに渡す方法は?
- 6. Node/ExpressからAngularに変数を渡す
- 7. クライアントからJS変数をExpressサーバーに渡すにはどうすればいいですか?
- 8. POSTから変数を渡す方法
- 9. ノード/ express + ejsのクライアントにオブジェクトを渡す?
- 10. ループからphp変数をjavascript変数に渡す方法
- 11. Expressとノードを使用してmongodbクエリからjavascript変数クライアント側にデータを渡す
- 12. express node.jsで複数のパラメータをルートからビューに渡す方法
- 13. サーバー側のjavascriptからクライアント側のjavascriptに変数を渡す
- 14. javascriptから変数へ変数の値を渡す方法
- 15. VBAからvb.net関数に配列変数を渡す方法
- 16. .map()からコールバック関数に変数を渡す方法
- 17. Angular2:変数をオブザーバブルから別の関数に渡す方法
- 18. rプログラムからmysql関数に変数を渡す方法
- 19. 複数の変数データをモデルからビューに渡す方法
- 20. javascriptからyii2関数に変数を渡す方法
- 21. Expressでミドルウェアにreq.paramsを渡す方法
- 22. APIゲートウェイ残りのクライアントからAWS IAM認証を渡す方法
- 23. Reduxストアをサーバーからクライアントに安全に渡す方法
- 24. Facebook IDをクライアントからサーバーに安全に渡す方法
- 25. Meteorヘルパーに変数を渡す方法
- 26. ノード+ express + jadeのクライアントにオブジェクトを渡しますか?
- 27. 辞書をc#(サーバ)からjavascript(クライアント)に渡す方法
- 28. RestクライアントからJboss BRMSルールに入力パラメータを渡す方法
- 29. POST応答からクライアントに情報を渡す方法NodeJS/ExpressJS
- 30. カスタムモジュールからtplに変数を渡す方法
エクスプレスアプリでPOSTメソッドルートを作成し、jqueryを使用してajax呼び出しを使用してクライアントページからそのPOST APIをヒットすることができます。 –
私は非常に簡単なサンプルを教えていただけますか?私はそれを検索しようとしましたが、すべての例はjsオブジェクトと非常に複雑で、私が探していたものと全く同じではありません –
関連:[Express jsフォームデータ](https://stackoverflow.com/questions/24800511/express-js -form-data)。また、['req.body'](http://expressjs.com/en/4x/api.html#req.body)のドキュメントを参照してください。 –