1

我一直在尝试使用任何软件包部署模板 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-binary "@./dist/main.js"

结果是一大块文本,后面跟着:

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

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

忘了还说使用 lodash 调用该函数也可以。

4

1 回答 1

0

在开头添加

 target: 'webworker',

删除这两行

devtool: 'cheap-module-source-map',
optimization: { minimize: false },

并在生产模式下运行

于 2019-03-06T13:45:06.673 回答