#今回やりたい事
フロントサイド(jquery)からバックエンド(Node.js)にajaxで通信をしたいです.
#環境
heroku
jquery
node.js(expressは使っておりません)urlモジュールとhttpsモジュールを使っています
#現状
jquery ajaxでpost通信を行おうとしますが,
どうもreq.on("data")が着火しません.
偶に,コンソールを見ると上手くpost受信ができるという
謎な現象に陥ってしまいました...
参考にしたサイト node.jsのpost通信
ajax 2018
サーバーサイドは
js
1if(req.method == "POST"){ 2 console.log("post") ; 3 req.on('data', function(chunk) { 4 let data = "" ; 5 data += chunk ; 6 console.log("post受信") 7 }); 8 res.end() ; 9 10 }
フロントサイドは
js
1$(`form[name="fff"]`).submit(function(e){ 2 // var button = $(this); 3 // button.attr("disabled", true); 4 e.preventDefault() ; 5 6 let sei = $("#sei").val() ; 7 let mei = $("#mei").val() ; 8 let ksei = $("#k-sei").val() ; 9 let kmei = $("#k-mei").val() ; 10 let university = $(`select[id="university"] option:selected`).text() ; 11 let nyusya = $(`select[id="nyusya"] option:selected`).text() ; 12 let user = $(`input[id="user"]`).val() ; 13 14 let sex ; 15 if($(`input[id="man"]`).prop(`checked`)){ 16 sex="m" 17 }else{ 18 sex="f" 19 } ; 20 let gakubukeitou = $(`select[id="gakubukeitou"] option:selected`).text() ; 21 let gakubu = $("#gakubu").val() ; 22 let gakka = $("#gakka").val() ; 23 let katei ; 24 if($(`input[id="gakubusei"]`).prop(`checked`)){ 25 katei = "学部生" 26 }else{ 27 katei = "院生" 28 } ; 29 let mailaddress =$(`#mail`).val() ; 30 let graduate = $(`select[id="graduate"] option:selected`).text() ; 31 let graduatemonth = $(`select[id="graduatemonth"] option:selected`).text() ; 32 let genre = $(`select[id="genre"] option:selected`).text() ; 33 let target = $(`select[id="target"] option:selected`).text() ; 34 let tel = $("#tel-num").val() ; 35 let lineID = $("#lineID").val() ; 36 let password = $(`input[id="inputPassword5"]`).val() ; 37 let date_detail = dateToFormatString(new Date(), '%YYYY%年%MM%月%DD%日 (%w%) %HH%時%mm%分'); 38 let deiba=$("#deiba").prop(`checked`) ; 39 let deiba_TF ="T" ; 40 41 if(deiba){ 42 deiba_TF = "T" ; 43 }else{ 44 deiba_TF = "F" ; 45 } 46 47 let notification = $("#notification").prop(`checked`) ; 48 let notification_TF ="T" ; 49 50 if(notification){ 51 notification_TF = "T" ; 52 }else{ 53 notification_TF = "F" ; 54 } 55 56let regbox={ 57 user : user , 58 mail_address : mailaddress , 59 password : password , 60 last_name : sei , 61 first_name:mei , 62 last_name_kana : ksei , 63 first_name_kana : kmei , 64 sex : sex , 65 phone_no : tel , 66 university_id : university , 67 course_type : katei , 68 faculty_name : gakubu , 69 faculty_keito : gakubukeitou , 70 department_name : gakka , 71 entering_year : nyusya , 72 genre : genre , 73 target : target , 74 lineID : lineID , 75 created :date_detail , 76 file : "", 77 graduate : graduate , 78 graduatemonth : graduatemonth , 79 deiba_TF : deiba_TF, 80 notification_TF : notification_TF 81} 82 83$.ajax({ 84 type: 'POST', 85 url : '/restreg', 86 data:JSON.stringify(regbox) , 87}).done(function() { 88 alert("成功") 89 // location.href = '/login'; 90 }).fail(function() { 91 alert('error'); 92 }) 93}) 94 95
です.
おねがいします
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。