无服务器错误代码10021:未捕获的ReferenceError:需求未定义

时间:2018-11-26 02:57:46

标签: node.js webpack cloudflare serverless-framework cloudflare-workers

我在尝试使用任何软件包部署模板cloudflare worker时遇到了一段时间。在过去的几个小时里,我一直在尝试修改webpack,但运气不佳。如果没有require语句,则部署它并调用该函数即可正常工作。

index.js

addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

const _ = require('lodash');

async function handleRequest(request) {
  return new Response("Hello world")
}

webpack.config.js

module.exports = {
  entry: './index.js',
  mode: 'development',
  devtool: 'cheap-module-source-map',
  optimization: { minimize: false },
  output: {
    path: __dirname + '/dist',
    publicPath: 'dist',
    filename: "main.js"
  },
  target: 'webworker',
};

运行此命令似乎也可以

curl -X PUT“ https://api.cloudflare.com/client/v4/zones/:zoneId/workers/script” -H“ X-Auth-Email:CLOUDFLARE_AUTH_EMAIL” -H“ X-Auth-Key:CLOUDFLARE_API_KEY” -H“ Content-Type:application / javascript” --data -二进制“ @。/ dist / main.js”

结果是一团巨大的文字,后面紧跟着:

"success": true,
"errors": [],
"messages": []

我不知道为什么我似乎不需要任何库,有人可以启发我吗?

忘了也说用lodash调用该功能也是可行的。

1 个答案:

答案 0 :(得分:0)

在开头添加

getUsers()
  .zipWith(getCourses(),Pair::new)
  .subscribeOn(Schedulers.io)
  .observeOn(AndroidSchedulers.mainThread)
  .subscribe(usersAndCoursesPair -> {
     //update your view
   },throwable -> //print any error could occur
  }

删除这两行

 target: 'webworker',

并以生产模式运行