小编Jon*_*son的帖子

将 aws-sdk 升级到版本 3 - 流式 S3 上传

我正在尝试将程序升级到 aws-sdk 版本 3,但收到错误:

NotImplemented:您提供的标头暗示未实现的功能

函数get_s3_stream需要返回一个流给主程序。

SDK 版本 2,有效:

var AWS = require("aws-sdk");
var s3 = new AWS.S3({apiVersion: '2006-03-01'});
const stream = require('stream');

function get_s3_stream() {
  var pass = new stream.PassThrough();
  var params = {Bucket: "bucketname", Key: "testfile1.txt", Body: pass};
  s3.upload(params, function(err, data) {
    console.log(err, data);
  });
  return pass;
}

const inputStream = stream.Readable.from(["input string1"])
const outStream = get_s3_stream()
inputStream.pipe(outStream);

Run Code Online (Sandbox Code Playgroud)

SDK版本3,不起作用:

const { S3Client, PutObjectCommand } = require("@aws-sdk/client-s3");
const s3Client = new S3Client({ region: "us-east-1" });
const stream = require('stream') …
Run Code Online (Sandbox Code Playgroud)

streaming amazon-s3 amazon-web-services node.js

5
推荐指数
1
解决办法
4059
查看次数

多个选择器上的操纵符waitForSelector

我让Puppeteer使用查找表单控制网站,该表单可以返回结果或“未找到记录”消息。我如何知道退货了?waitForSelector似乎一次只等待一个,而waitForNavigation似乎不起作用,因为它是使用Ajax返回的。我正在使用try catch,但是正确正确并降低所有速度都很困难。

try {
    await page.waitForSelector(SELECTOR1,{timeout:1000}); 
}
catch(err) { 
    await page.waitForSelector(SELECTOR2);
}
Run Code Online (Sandbox Code Playgroud)

screen-scraping puppeteer

2
推荐指数
6
解决办法
5554
查看次数