2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Function Computeで`TypeError: stream.on is not a function`

Last updated at Posted at 2018-07-04

Function Computeのチュートリアルを実行している途中502 UnhandledInvocationErrorで詰まりました。

ログを見るとこんなエラーが出ていて、raw-bodyでコケているみたいです。

FC Invoke Start RequestId: c3c1871c-8a39-9acc-144e-7a9a20d0d4e2
2018-07-04T05:00:57.370Z c3c1871c-8a39-9acc-144e-7a9a20d0d4e2 [error] TypeError: stream.on is not a function
at readStream (/usr/local/lib/node_modules/raw-body/index.js:190:10)
at getRawBody (/usr/local/lib/node_modules/raw-body/index.js:108:12)
at module.exports.handler (/code/test_http.js:20:3)
FC Invoke End RequestId: c3c1871c-8a39-9acc-144e-7a9a20d0d4e2

さて、ではこのrequestを見てみましょう。handlerの先頭にconsole.logを仕込んでaliyunコンソールから実行してログを見ます。

2018-07-04T05:28:56.214Z e8d3fcb6-9a71-efc0-e7b6-a1722afda2eb [verbose] <Buffer 22 7b 5c 6e 20 20 5c 22 6b 65 79 5c 22 3a 20 5c 22 76 61 6c 75 65 5c 22 5c 6e 7d 22>

HTTPトリガーインターフェイスのオブジェクトが欲しいのに、なんか違うのが入ってますね。

BufferだったのでとりあえずtoString()してみます。

2018-07-04T05:35:56.884Z 94236568-9921-16dc-9638-72e013488549 [verbose] "{\n \"key\": \"value\"\n}"

なんか出てきました。テスト用のイベントのJSONをStringifyしてBufferにしたものがrequestに入っているようです。

これはOSSをトリガーにした時と同じ形式ですね。。。

結論

HTTPトリガーの作成忘れでした。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?