Node.js API开发详细说明了具有更多请求的端点

Node.js API开发详细说明了具有更多请求的端点,node.js,express,api-design,Node.js,Express,Api Design,我使用带有节点的express非常轻松地创建端点。 我有一个名为/users/:uid/upload的端点,带有POST请求。 我希望它能够处理大量的数据,但是用大约3.5MB的JSON发送请求会导致412错误(负载太大) My Payload包含一组(音乐)艺术家及其专辑,因此artist/:artistid/albums/:albumid 所以我想到了其他选择: 备选方案:具有更多请求的详细端点 因此,我将创建以下端点: POST /artists/:artistid/data POST /

我使用带有节点的express非常轻松地创建端点。 我有一个名为
/users/:uid/upload
的端点,带有POST请求。 我希望它能够处理大量的数据,但是用大约3.5MB的JSON发送请求会导致412错误(负载太大)

My Payload包含一组(音乐)艺术家及其专辑,因此
artist/:artistid/albums/:albumid

所以我想到了其他选择:

  • 备选方案:具有更多请求的详细端点
  • 因此,我将创建以下端点:

    POST /artists/:artistid/data
    POST /artists/:artistid/albums/:albumid/
    
    这将使大的负载变得更小,但是我会有
    艺术家的数量*每个艺术家的专辑数量
    请求相对接近

  • 备选方案:将JSON作为文件上载
  • 我需要将数据持久化到一个文件中,然后上传它,然后解析文件并将其存储在某个地方。我不希望使用此选项,因为文件需要经常更新

    有没有我遗漏的替代方案,你会推荐有很多要求的替代方案1吗


    谢谢你

    对于你目前的情况,你可以增加尺寸限制

    安装并要求:

    constbodyparser=require('body-parser')

    在声明端点之前,请添加以下内容:

    app.use(bodyParser.json({limit:'10mb}))



    尽管我建议将多个请求发送给详细的端点,因为如果一个请求失败,您只能重试该特定的一个请求。整个操作不会以这种方式失败。因此,如果您有时间在这方面进行投资,最好的方法是多个端点。

    对于您目前的情况,您可以增加大小限制

    安装并要求:

    constbodyparser=require('body-parser')

    在声明端点之前,请添加以下内容:

    app.use(bodyParser.json({limit:'10mb}))



    尽管我建议将多个请求发送给详细的端点,因为如果一个请求失败,您只能重试该特定的一个请求。整个操作不会以这种方式失败。因此,如果您有时间在这方面进行投资,最好的方法是使用多个端点。

    因此,一般来说,提出如此巨大的请求并不是一种不好的做法?这并不理想。3.5MB对于单个请求来说是巨大的,但它也不是一个巨大的数据量;我正在寻找处理如此大的请求的最佳方法,而不是增加限制(这是一个很好的选择)。因此,您建议对详细端点的多个请求设置更高的限制?不,我建议对详细端点的多个请求设置更高的限制,因为如果一个请求失败,您只能重试该特定的请求。整个操作不会以这种方式失败。因此,如果您有时间在这方面进行投资,最好的方法是使用多个端点。使用多个详细的端点有更多的好处,但很难在注释中对其进行扩展(对于堆叠的请求,内存使用保持较低,更“ReSTful”的API等)。感谢您的意见,多个请求听起来不错:)谢谢一般来说,发出如此大的请求不是一个坏的做法?这并不理想。3.5MB对于单个请求来说是巨大的,但它也不是一个巨大的数据量;我正在寻找处理如此大的请求的最佳方法,而不是增加限制(这是一个很好的选择)。因此,您建议对详细端点的多个请求设置更高的限制?不,我建议对详细端点的多个请求设置更高的限制,因为如果一个请求失败,您只能重试该特定的请求。整个操作不会以这种方式失败。因此,如果您有时间在这方面进行投资,最好的方法是使用多个端点。使用多个详细的端点有更多的好处,但很难在注释中对其进行扩展(堆叠请求的内存使用保持较低,更“ReSTful”的API等)。谢谢您的意见,多个请求听起来不错:)谢谢