当前位置: 首页 > 知识库问答 >
问题:

从hapi到http服务器映像

谭刚毅
2023-03-14

我在后端的知识不是最好的。。。

我在这方面有问题。

我有一个ng2上传图像,从那里它将对api进行post req,但是我希望有一个服务器(来自节点的http服务器)只在那里添加文件,但我不知道如何从这里开始:(

so ng2(FE)-

这些是我的文件upload.provider.js const fs=require('fs');

class UploadProvider {
  constructor(path, request, reply) {
    this.path = path;
    this.data = request.payload;
    this.reply = reply;
    this.image();
  }

  image() {
    if (this.data.uploadFile.hapi.filename) {
      const name = this.data.uploadFile.hapi.filename.replace(/\ /g,'-');
      const path = this.path + name;
      const file = fs.createWriteStream(path);

      file.on('error', (err) => { 
        console.error(err) 
      });

      this.data.uploadFile.pipe(file);

      this.data.uploadFile.on('end', (err) => { 
        var ret = {
          filename: this.data.uploadFile.hapi.filename.replace(/\ /g,'-'),
          headers: this.data.uploadFile.hapi.headers
        }
        this.reply(JSON.stringify(ret));
      })
    }
  }
}

module.exports = UploadProvider;

trister.controller.js

const upload = require('../providers/upload.provider');
const Teaser = require('../model/teaser.model');

var teaser = {
  upload: (request, reply) => {
  new upload('http://127.0.0.1:8080/teaser-images/', request, reply);
},

....

我一直得到这样的输出:

{错误:enoint:没有这样的文件或目录,打开'http://192.168.33.1:8080/teaser-images/IX4A6789.jpg'errno:-2,代码:'enoint',系统调用:'open',路径:'http://127.0.0.1:8080/teaser-images/IX4A6789.jpg'}

非常感谢任何帮助,这一直困扰着我。

我真的很想更好地理解流缓冲区的概念。

最好,乔

共有1个答案

拓拔富
2023-03-14

我忘记了浏览器最重要的一个事实。。。它们基于GET。

我试图将图像发送到一个不是服务器的地方。在文件夹上创建http服务器后:

new upload('../images', request, reply);

然后在那个文件夹上添加一个http服务器,我就可以访问我想要的图像了。

 类似资料:
  • 我需要一些帮助来理解如何编写HTTP路由器,它将HTTP标头识别为路由标准。我找到了链接https://github.com/cgbystrom/netty-tools/blob/master/src/main/java/se/cgbystrom/netty/http/router/RouterHandler.java它似乎自己做路由。但是现在不清楚,如何 连接到另一个HTTP服务器 发送HTTP

  • 我正在开发一个基于云的后端HTTP服务,该服务将公开用于与一些on-prem系统的集成。客户机系统是由外部供应商定制的,它们是带有自己数据库的后端系统。这些系统部署在我们客户的公司中,我们无法访问它们,也无法控制它们。我们向供应商提供我们的API规范,他们实现客户机代码。 我的服务与客户交换的数据格式基于XML,并遵循一定的标准。供应商用不同的编程语言实现他们的客户机系统,随着时间的推移,新的供应

  • ?> 完全协程化的Http服务器实现,Co\Http\Server继承自Co\Server,在此不再赘述,只说差异。 与 Http\Server 的不同之处: 可以在运行时动态地创建、销毁 对连接的处理是在单独的子协程中完成,客户端连接的Connect、Request、Response、Close是完全串行的 !> 需要v4.4.0或更高版本 !> 若编译时开启HTTP2,则默认会启用HTTP2协

  • 程序代码 http_server.php $http = new Swoole\Http\Server("0.0.0.0", 9501); $http->on('request', function ($request, $response) { var_dump($request->get, $request->post); $response->header("Content

  • 问题内容: 我想在本地实现Java HTTP服务器,这意味着服务器计算机将由我控制。我预计将不超过20个客户端向其发送请求。我想知道如何去做: 我应该使用像Apache Tomcat这样的J2EE servlet容器吗? 我可以使用J2SE类并使用它们来构建它吗? 有没有其他选择? 您的经验表明什么? 问题答案: Sun 1.6 JRE中嵌入了一个简单的HTTP服务器。它不兼容JavaEE或ser

  • 主要内容:1.概述,2.API,3. Tomcat 实现1.概述 Dubbo 的 HTTP 服务器,在 dubbo-remoting-http 模块中实现,使用在 http://、 rest://、hessian://、webservice://协议上。 dubbo-remoting-http 模块,类图如下: 2.API 2.1 HttpServer 实现 Resetable 接口,HTTP 服务器接口。方法如下: 2.2 AbstractHttpS