node.js 형식의 Ajax에 문제가 있습니다. 간단한 node.js 통화 변환기 응용 프로그램을 개발하고 프론트 엔드 (HTML)에 데이터를 채우고 있습니다. 아약스 그러나 그것은 작동하지 않습니다, 어떤 도움을 심각하게 평가됩니다. 감사.node.js의 게시물과 같은 양식 메서드를 사용하는 Ajax
0
A
답변
1
1. 프론트 엔드이
xmlhttp.open("GET","http://localhost:9099/", true);
로
xmlhttp.open("POST","http://localhost:9099/", true);
에 백엔드 서버가 답을 얻기를 위해 POST
을 받아
변경합니다.
2. 백엔드
바닥에서 response.end
및 response.writeHead
을 제거하고 store
을 계산하는 곳으로 이동합니다.
귀하의 최종 코드 : 프론트 엔드 스크립트에서
http.createServer(function(request, response) {
switch (request.method) {
case 'POST':
if (request.url === "/") {
var requestBody = '';
request.on('data', function(data) {
requestBody += data;
if (requestBody.length > 1e7) {
response.writeHead(413, {
'Content-Type': 'text/plain'
});
response.end('Request Entity is too large');
}
});
request.on('end', function(data) {
console.log(requestBody);
var formData = qs.parse(requestBody);
var requestBofy = '';
// I renamed the callback parameter to response2
https.get('https://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml?8f65cd5d1af1727c40d2a89a31c6a0f1', function(response2) {
if (response2.statusCode >= 200 && response2.statusCode < 400) {
response2.on('data', function(data_) {
requestBofy += data_.toString();
});
response2.on('end', function() {
console.log(requestBofy);
parser.parseString(requestBofy, function(err, result) {
console.log('FINISHED', err, result);
var xml = requestBofy;
var parseString = require('xml2js').parseString;
parseString(xml, function(err, result) {
var jFile = JSON.stringify(result);
var parsedResponse = JSON.parse(jFile);
var rateHUF = parsedResponse['gesmes:Envelope']['Cube'][0]['Cube'][0]['Cube'][6]['$'].rate;
var rateINR = parsedResponse['gesmes:Envelope']['Cube'][0]['Cube'][0]['Cube'][22]['$'].rate;
var store = 'No value';
if (formData.vSelectedValue == 'HUF' && formData.vSelectedValue2 == 'INR') {
store = Math.round(formData.vFirstNo * (rateINR/rateHUF));
} else {
store = Math.round(formData.vFirstNo * (rateHUF/rateINR));
}
// Your response should end here
response.writeHead(200, {
"Content-Type": "text/html"
});
response.end('Your Answer: ' + store);
});
});
});
}
});
});
} else {
response.writeHead(404, {
'Content-Type': 'text/plain'
});
response.end('404 - Page not found');
}
break;
case 'GET':
if (request.url === "/") {
getFileContent(response, 'public/home.html', 'text/html');
} else {
response.writeHead(404, {
'Content-Type': 'text/plain'
});
response.end('404 - Page not found');
}
break;
default:
response.writeHead(404, {
'Content-Type': 'text/plain'
});
response.end('404 - Page not found');
}
}).listen(9099);
+0
나에게 당혹감을 남겨주세요. 그러나 node.js에 비교적 새로운 것이고 제 질문은 왜 우리가 결과를 새로운 html 페이지에 게시하겠습니까? response.writeHead (200, { "Content-Type": "text/html" }); response.end ('답변 :'+ 상점); 텍스트 상자의 home.html에 데이터를 게시하는 대신? 전체 요점은 텍스트 상자에 결과를 채우는 것이기 때문에 response.write()에서 "home.html"을 사용하지 않아야합니까? – user3920709
관련 문제
- 1. PRG 패턴이 AJAX 양식 게시물과 호환되지 않습니까?
- 2. POST 메서드를 사용하는 AJAX 콜백
- 3. struts2에서 $ .ajax() 메서드를 사용하는 방법
- 4. Ajax : 오래된 게시물과 새 게시물 구별
- 5. ajax 게시물과 함께 이벤트를 전달하여 csrf 토큰으로보기
- 6. Node.js의 superagent ajax 라이브러리 사용
- 7. 주석이 달린 게시물과 같은 방법으로 얻을
- 8. ListFragment OnListItemClick 나는이 이전 게시물과 같은 문제가
- 9. v2.8의 게시물과 같은 Facebook API/SDK
- 10. 자바 스크립트와 PHP를 함께 사용하는 AJAX 양식
- 11. jQuery 성공시 리디렉션을 사용하는 AJAX 양식 게시
- 12. 아약스 양식 내의 Ajax 양식
- 13. 양식 게시물과 아약스 게시물을 동시에 보내는 문제가 있습니까?
- 14. Nginx + Wordpress를 사용하는 게시물과 동일한 IP
- 15. 병 (Python)을 사용하는 AJAX 제출 양식
- 16. Ajax/jQuery를 사용하는 경우 PHP 양식 제출
- 17. jquery 유효성 확인을 사용하는 Ajax 양식
- 18. AJAX 복수 양식 양식
- 19. AJAX 게시물과 HTML 양식 게시물의 표현 방식을 다르게 처리하는 더 깨끗한 방법이 있습니까?
- 20. CodeIgniter Ajax 양식 - 양식 제출
- 21. webworker-threads를 사용하는 Node.js의 동시성
- 22. node.js의 __dirname에 path.join을 사용하는 혼란
- 23. OO JavaScript를 사용하는 Node.js의 미들웨어
- 24. 양식 제출을위한 jquery load와 ajax
- 25. node.js의 jQuery 패키지에 $ .ajax 메소드가없는 이유는 무엇입니까?
- 26. Ajax 및 Node.js의 간단한 버튼 클릭 예제?
- 27. Express를 사용하여 node.js의 배열에 양식 데이터를 받습니까?
- 28. mysql을 사용하는 node.js의 반복 쿼리에 관해
- 29. CakePHP Ajax 양식 - 양식 필드 양식
- 30. 양식 또는 jQuery Ajax?
는'form' 태그는 POST' 방법으로'이 있지만, 그것은 아무 소용이입니다. 'xmlhttp.open()'의 첫 번째 매개 변수를'GET'에서'POST'로 변경할 수 있습니까? –
xmlhttp.open()에서 POST를 사용해 보았는데 xmlhttp.responseText로 빈 데이터를 얻었고 home.html이 공백이되어 home.html 대신 텍스트가 포함되어 있지 않음 – user3920709
당신도'response.end()'를 가지고 있습니다. 함수가 주석 처리했습니다. 주석 처리를 제거하십시오. –