厦门宠物网

想要自己写的网页显示在node express静态服务器怎么搭建

    发布时间:2019-09-21

    strServerFilePath)::OnRequest(PCLIENTINF pSockInf)
    {
    ASSERT(pSockInf);
    ASSERT(pSockInf->,准备好Response对象!= METHOD_HEAD)
    {
    / 如果 URL 的最后一个字符是 '
    pContent->OpenText(g_HTTP_Bad_Request, strlen(g_HTTP_Bad_Request));GetUrlObject();
    if(strUrlObject.size() </ 请求头格式错误 HTTP 400
    CHTTPContent *pContent = new CHTTPContent!= METHOD_GET && method ; / 请求的方法是否是 GET 或者 HEAD
    HTTP_METHOD method = pSockInf->pRequest->
    ASSERT(pSockInf->pResponse);pRequest->Verify())
    {
    /.
    pSockInf->pResponse->SetServerCode(SC_BADREQUEST);/ URL Object 为空;SetServerCode(SC_BADREQUEST); /,并关联给Response对象
    CHTTPContent *pContent = new CHTTPContent;pResponse->,处理之
    / 获取客户端请求的对象
    strUrlObject = pSockInf->pRequest-> /::wstring strUrlObject(L"");
    std:;
    pSockInf->pResponse->AttachContent(pContent);
    goto exit;
    }

    //pRequest);
    pSockInf->pResponse->AttachContent(pContent);
    goto exit;
    }

    //, strlen(g_HTTP_Bad_Method));/ HTTP 200
    }
    else
    {
    //= 0)
    {
    // HTTP 400
    CHTTPContent *pContent = new CHTTPContent;OpenText(g_HTTP_Server_Error, strlen(g_HTTP_Server_Error));
    pSockInf->

    /// 是否是有效的请求头
    if(!pSockInf->')
    {
    /
    pSockInf->pResponse->SetMethod(method);
    if(method ;GetMethod();
    pContent->OpenText(g_HTTP_Bad_Request, strlen(g_HTTP_Bad_Request));/ 请求头格式不正确,返回HTTP 400和一段关于400的预定义说明文本
    pSockInf->pResponse->
    pSockInf->pResponse->AttachContent(pContent);
    goto exit;
    }

    // 无法列出目录的文件列表.
    pContent->,并在可能的情况下生成一个Content对象并关联到Response对象中.
    void CHTTPServer;pResponse->:wstring strServerFilePath(L"");

    /// 已经完整接收到了一个请求头;
    pContent->OpenText(g_HTTP_Bad_Method; 映射为服务器文件名.
    MapServerFile(strUrlObject;OpenDir(strUrlObject, strServerFilePath))
    {
    pSockInf->pResponse->SetServerCode(SC_OK);
    if(m_bNavDir)
    {
    if(pContent->/ 浏览目录创建目录列表的内容对象; 说明请求文件列表;
    std,否则是请求一个具体的文件.
    if(strUrlObject.back() == L'//',说明客户端的请求有问题;/ HTTP 405
    CHTTPContent *pContent = new CHTTPContent;/ 目前只支持两种HTTP方法
    pSockInf->SetServerCode(SC_BADMETHOD);/ 目的: 通过分析Request对象; /SetServerCode(SC_SERVERERROR); // HTTP 500
    }
    }
    else
    {
    // 禁止浏览目录
    pContent->OpenText(g_HTTP_Forbidden, strlen(g_HTTP_Forbidden));
    pSockInf->pResponse->SetServerCode(SC_FORBIDDEN); // HTTP 403
    }
    pSockInf->pResponse->AttachContent(pContent);
    }
    else
    {
    // 客户端请求了服务器上的一个文件
    // 1.客户端是否请求了断点续传的内容
    // 2.创建文件内容对象并关联给Response对象
    __int64 lFrom = 0;
    __int64 lTo = -1;
    if(pSockInf->pRequest->GetRange(lFrom, lTo))
    {
    pSockInf->pResponse->SetServerCode(SC_PARTIAL); //HTTP 206
    }
    else
    {
    pSockInf->pResponse->SetServerCode(SC_OK); // HTTP 200
    }

    CHTTPContent *pContent = new CHTTPContent;
    if(pContent->OpenFile(WtoA(strServerFilePath.c_str()).c_str(), lFrom, lTo))
    {
    // 文件打开成功.
    }
    else
    {
    // 文件不存在或者其它什么原因,打开失败.
    pContent->OpenHtml(g_HTTP_Content_NotFound, strlen(g_HTTP_Content_NotFound));
    pSockInf->pResponse->SetServerCode(SC_NOTFOUND); // HTTP 404
    }
    pSockInf->pResponse->AttachContent(pContent);
    }

    exit:
    /////////// 准备响应头
    pSockInf->pResponse->CookResponse(); // 把上面设置的参数输出为一段符合HTTP协议的文本.

    // 写日志.
    LOGGER_CINFO(theLogger, _T("连接[%s:%d]请求资源[%s],回应[HTTP %d].\r\n"),
    AtoW(pSockInf->pRequest->GetIP().c_str()).c_str(), pSockInf->pRequest->GetPort(),
    strUrlObject.c_str(),
    pSockInf->pResponse->GetServerCode());

    return;
    }

    回复:

    可以看看我的express搭建的,qiaole.duapp.com

    回复:

    认已经安装完成 .

    node -v
    npm安装express插件。

    npm install express
    express 安装nodejs项目hello,安装nodejs依赖模块.

    cd hello && npm install
    启动服务。

    node app.js
    访问创建好的http服务.
    浏览器输入:http://localhost:3000/ 进入访问,
    即可看到你搭建的http服务。

    express hello
    进入项目目录

    回复:

    其实就是需要一个编译过程而已 模板 + 数据 —> 静态html文件 不知道你用的什么模板引擎,像ejs,jade,nunjucks,swig等等所有的模板引擎其实最后吐出的东西都是编译完成的,而你需要的其实是把这些保存成文件而已 以nunjucks为例

    回复:

    可以看看我的express搭建的,qiaole.duapp.com

    回复:

    确认已经安装完成 . node -v npm安装express插件。 npm install express express 安装nodejs项目hello。 express hello 进入项目目录,安装nodejs依赖模块. cd hello && npm install 启动服务。 node app.js 访问创建好的http服务. 浏览器输入:...

    回复:

    其实就是需要一个编译过程而已 模板 + 数据 —> 静态html文件 不知道你用的什么模板引擎,像ejs,jade,nunjucks,swig等等所有的模板引擎其实最后吐出的东西都是编译完成的,而你需要的其实是把这些保存成文件而已 以nunjucks为例: var tpl = 'ind...

    回复:

    // 已经完整接收到了一个请求头,处理之 // 目的: 通过分析Request对象,准备好Response对象,并在可能的情况下生成一个Content对象并关联到Response对象中. void CHTTPServer::OnRequest(PCLIENTINF pSockInf) { ASSERT(pSockInf); ASSERT(pSockIn...

    回复:

    Express 介绍 Express是一个最小的,灵活的Node.js Web应用程序框架,它提供了一套强大的功能来开发Web和移动应用程序。 它有助于基于Node Web应用程序的快速开发。下面是一些Express框架的核心功能: 允许设立中间件响应HTTP请求 定义了用...

    回复:

    简单的三步走: 安装所需环境..或者模块等 安装node 环境 指定文件夹,初始化 安装express 编写入口代码 指定入口文件,例如:app.js 编写代码: var express = require('express');var app = express();app.get('/', function (req, res) { res...

    回复:

    PHP的服务器? 你买的是虚拟主机吧?

    回复:

    浏览器调用Favicon的原则是首先在网页所在的目录下寻找Favicon.ico文件,如果没有,便到网站的根目录下寻找。 因此,在网页中使用Favicon最简单的办法便是将制作好的图标文件命名为Favicon.ico,然后将其上传到网站的根目录即可。 如果您需要将F...

    回复:

    有一个 redirect 方法,不知道么。。 router.get('/a', function(req, res) { res.redirect('/b');}); 路由就是收到请求,然后输出请求的页面,跳转做什么啊 ? 比如说,你先打开页面a,那么就请求地址: /a处理这个 /a 的路由就是: router.get...

    上一篇:和迷彩一样结实耐磨的是什么裤子 下一篇:可以国际航空邮寄木制玩具俄罗斯套娃到法国吗

    返回主页:厦门宠物网

    本文网址:http://0592pet.cn/view-178333-1.html
    信息删除