See announcement Cloudflare Workers Now Support COBOL.
Uses GnuCOBOL 2.2.
To avoid setting up the compiler environment locally, you can use a pre-built
Docker image: xtuc/cobweb
:
docker run \
-e EM_OUT \
-e EM_ARGS \
-v /tmp/cobol-worker:/root/.emscripten_cache/ \
-v $PWD:/worker \
-v $PWD/build:/build \
xtuc/cobweb \
/worker/src/worker.cob
Compile dependecies:
make all
Compile COBOL to WebAssembly:
./cobweb.sh source.cob
The program-id
should be worker
otherwise the program will fail to compile.
Set the HTTP status code:
CALL "set_http_status" USING "400".
Set the response body to a string:
CALL "set_http_body" USING "something".
Append a string to the response body:
CALL "append_http_body" USING "something".
Get HTTP form values:
WORKING-STORAGE SECTION.
01 THE-VALUE PIC S9(9) BINARY.
PROCEDURE DIVISION.
CALL "get_http_form" USING "key" RETURNING THE-VALUE.
See the example.