이번에는 로컬 서버를 구축하고 크로스 도메인을 처리하는 nodejs를 소개하겠습니다. 로컬 서버를 구축하고 크로스 도메인을 처리하는 nodejs에 대한 주의 사항은 무엇입니까? 다음은 실제 사례입니다.
최근에 jquery로 작성된 작은 데모를 꺼내서 실행했습니다. 처음에 로컬 서비스를 활성화하는 것을 잊어버렸기 때문에 콘솔에서 XMLHttpRequest가 file:///C:/Users/79883을 로드할 수 없다고 계속 보고했습니다. /Desktop/ ajax/data.json?{%22username%22:%22lcl@qq.com%22,%22pwd%22:%22Home20170702%22} 교차 출처 요청은 프로토콜 구성표(http, data, chrome)에만 지원됩니다. , chrome-extension, https.. Cross Origin 요청은 http, data, chrome, chrome-extension, https, chrome-extension-resource 프로토콜 체계에서만 지원됩니다. 그런 다음 여기에 제가 작성한 server.js 서버를 시작했습니다. 그 과정에서 이 방법이 꽤 번거롭다고 느껴서 브라우저 속성을 변경하는 등 다른 방법을 계속 시도했지만 그 어느 것도 크로스 도메인 문제를 해결하지 못했습니다. 마침내 두 가지 효과적인 방법을 생각해냈습니다. 여기서는 이 두 가지 방법을 함께 소개하겠습니다.
1. Node를 사용하여 웹 서버 만들기
참고: Node.js는 http 모듈을 제공합니다. http 모듈은 주로 HTTP 서버 및 클라이언트를 구축하는 데 사용됩니다.
1 , 서버 코드 작성 server.js
var http = require('http'); var fs = require('fs');//引入文件读取模块 var documentRoot = 'C:/Users/79883/Desktop/jquery/ajax';//需要访问的文件的存放目录 var server= http.createServer(function(req,res){ //客户端输入的url,例如如果输入localhost:8888/index.html //那么这里的url == /index.html var url = req.url; var file = documentRoot + url; console.log(url); fs.readFile( file , function(err,data){ /* 一参为文件路径 二参为回调函数 回调函数的一参为读取错误返回的信息,返回空就没有错误 二参为读取成功返回的文本内容 */ if(err){ //HTTP 状态码 404 : NOT FOUND //Content Type:text/plain res.writeHeader(404,{ 'content-type' : 'text/html;charset="utf-8"' }); res.write('<h1>404错误</h1><p>你要找的页面不存在</p>'); res.end(); }else{ //HTTP 状态码 200 : OK //Content Type:text/plain res.writeHeader(200,{ 'content-type' : 'text/html;charset="utf-8"' }); res.write(data);//将index.html显示在客户端 res.end(); } }); }).listen(8888); console.log('服务器开启成功');
위의 코드를 통해 서버의 파일 검색을 실현할 수 있습니다. 다음으로 html 파일을 생성한 후 브라우저를 통해 액세스하겠습니다.
2. 브라우저가 요청할 수 있는 html 파일(index.html)을 작성합니다
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>index</title> </head> <body> 这是一个用于进行nodejs服务器测试的html文件,通过在浏览器上面输入 http://127.0.0.1:8888/index.html(自己所建的项目名)进行访问 </body> </html>
3. 테스트해 보세요
(1) 먼저 서버를 시작하고 cmd를 열고 프로젝트 위치를 찾습니다. , 그리고 Command node server.js를 입력하여 서버를 시작합니다
(2) 브라우저에서 접속하여 URL 바에 http://127.0.0.1:888/index.html을 입력
해당 페이지가 표시되면 , 그것은 당신이 성공했다는 것을 증명합니다. 다음으로 제가 말씀드린 두 번째 방법인 로컬 서비스를 빠르게 구축하기 위해 nodejs를 소개하겠습니다.
2. nodejs를 사용하여 로컬 서비스를 빠르게 구축
참고: node.js의 어디든 현재 디렉터리를 언제 어디서나 정적 파일 서버의 루트 디렉터리로 바꾸는 것입니다.
1 먼저 cmd를 열고. node -v를 입력하여 node.js가 설치되었는지 확인한 다음 npm install angwhere -g 명령을 입력하여 정적 파일 서버를 설치하면 다음과 같이 표시됩니다.
2. cmd 페이지에 구축하려는 서버 경로는
3. 그런 다음 현재 경로 아래에 8888을 입력합니다. 아래 그림과 같이
4.Enter를 누르면 브라우저가 자동으로 로컬 액세스 URL을 엽니다. , 그리고 간단한 노드 서버가 우리에 의해 구축되었습니다!
이 기사의 사례를 읽은 후 방법을 마스터했다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!
추천 도서:
Bootstrap에서 WebUploader를 사용하는 단계에 대한 자세한 설명
위 내용은 nodejs는 로컬 서버를 구축하고 크로스 도메인을 처리합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!