http-server驱动,数据处理脚本调用saveImageFromBase64接口报错问题
-
数据处理脚本中调用saveImageFromBase64接口:

驱动日志报错内容:
�{"time":"2026-05-16T11:50:11.02304251+08:00","level":"DEBUG","msg":"处理请求: 设备表=单目电子界桩,客户端=171.113.103.120:17351. POST /http-server-driver/ele-mark/uploadimage HTTP/1.1","logType":"syslog","service":"jsz-6a07cb28a7df9c1e6298163d-http-server-driver","module":"请求处理","projectId":"jsz","table":"单目电子界桩","group":"6a07cb28a7df9c1e6298163d"}
Y{"time":"2026-05-16T11:50:11.023066094+08:00","level":"INFO","msg":"create a new vm: 1"}
"{"time":"2026-05-16T11:50:11.064370173+08:00","level":"INFO","msg":"处理图片上传请求","logType":"syslog","service":"jsz-6a07cb28a7df9c1e6298163d-http-server-driver","module":"单目电子界桩","projectId":"jsz","table":"请求处理脚本","group":"6a07cb28a7df9c1e6298163d"}
{"time":"2026-05-16T11:50:11.064566109+08:00","level":"INFO","msg":"http: panic serving 171.113.103.120:17351: runtime error: invalid memory address or nil pointer dereference\ngoroutine 245 [running]:\nnet/http.(*conn).serve.func1()\n\t/usr/local/go/src/net/http/server.go:1943 +0xd3\npanic({0x1498cc0?, 0x28c94b0?})\n\t/usr/local/go/src/runtime/panic.go:783 +0x132\ngithub.com/dop251/goja.(*Runtime).runWrapped.func1()\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/runtime.go:2465 +0xe5\npanic({0x1498cc0?, 0x28c94b0?})\n\t/usr/local/go/src/runtime/panic.go:783 +0x132\ngithub.com/dop251/goja.(*vm).handleThrow(0xc0023a5200, {0x1498cc0, 0x28c94b0})\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/vm.go:788 +0x425\ngithub.com/dop251/goja.(*vm).try.func1()\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/vm.go:807 +0x3f\npanic({0x1498cc0?, 0x28c94b0?})\n\t/usr/local/go/src/runtime/panic.go:783 +0x132\ngithub.com/dop251/goja.(*vm).handleThrow(0xc0023a5200, {0x1498cc0, 0x28c94b0})\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/vm.go:788 +0x425\ngithub.com/dop251/goja.(*vm).runTryInner.func1()\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/vm.go:830 +0x3f\npanic({0x1498cc0?, 0x28c94b0?})\n\t/usr/local/go/src/runtime/panic.go:783 +0x132\nhttp-server-driver/internal/service/script.ApiClient.saveImageFromBase64({{0x1c02958, 0xc00340c1b0}, {0x7ffd7d335e17, 0x3}, 0xc001ea6a80, 0xc001e9e008}, {0x1c16d50?, 0xc002c099d0?}, {0x1c16de8, 0xc0016245a0}, ...)\n\t/builds/core/drivers/http-server-driver/internal/service/script/api_client.go:324 +0xc1\nreflect.Value.call({0x149e360?, 0xc000cffc00?, 0xc0020caf10?}, {0x16e06f6, 0x4}, {0xc00011b560, 0x4, 0xc0020caf38?})\n\t/usr/local/go/src/reflect/value.go:581 +0xcc6\nreflect.Value.Call({0x149e360?, 0xc000cffc00?, 0xc0016245b8?}, {0xc00011b560?, 0xc0034049c0?, 0xa13?})\n\t/usr/local/go/src/reflect/value.go:365 +0xb9\ngithub.com/dop251/goja.(*Runtime).newWrappedFunc.(*Runtime).wrapReflectFunc.func1({{0x1c16890, 0xc00340c1e0}, {0xc00340bbb0, 0x3, 0x7}})\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/runtime.go:1990 +0x41d\ngithub.com/dop251/goja.(*nativeFuncObject).vmCall(0xc003397a40, 0xc0023a5200, 0x3)\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/func.go:563 +0x18c\ngithub.com/dop251/goja.call.exec(0x16245b8?, 0xc0023a5200)\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/vm.go:3377 +0x66\ngithub.com/dop251/goja.(*vm).run(0xc0023a5200)\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/vm.go:582 +0x5b\ngithub.com/dop251/goja.(*vm).runTryInner(0xc0023a5200?)\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/vm.go:834 +0x52\ngithub.com/dop251/goja.(*baseJsFuncObject).__call(0xc003397500, {0xc0034067a0?, 0x2, 0xc0020cb350?}, {0x0, 0x0}, {0x1c16a58?, 0x2929f40?})\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/func.go:426 +0x711\ngithub.com/dop251/goja.(*baseJsFuncObject)._call(...)\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/func.go:442\ngithub.com/dop251/goja.(*baseJsFuncObject).call(0x0?, {{0x1c16a58, 0x2929f40}, {0xc0034067a0, 0x2, 0x2}}, {0x0?, 0x0?})\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/func.go:450 +0x6d\ngithub.com/dop251/goja.(*baseJsFuncObject).Call(...)\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/func.go:382\ngithub.com/dop251/goja.AssertFunction.func1.1()\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/runtime.go:2425 +0x56\ngithub.com/dop251/goja.(*vm).try(0xc0023a5200, 0xc0020cb618)\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/vm.go:811 +0x234\ngithub.com/dop251/goja.(*Runtime).runWrapped(0xc001e9e008, 0xc0020cb630?)\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/runtime.go:2469 +0x5f\ngithub.com/dop251/goja.AssertFunction.func1({0x1c16a58?, 0x2929f40?}, {0xc0034067a0?, 0x12afba0?, 0xc00340ca80?})\n\t/go/pkg/mod/github.com/dop251/goja@v0.0.0-20240731150404-c665f0b58f6e/runtime.go:2424 +0x8c\nhttp-server-driver/internal/service.(*ScriptVM).Call(0xc000602d20, {0xc0020cb8f0, 0x2, 0xc003e2f950?})\n\t/builds/core/drivers/http-server-driver/internal/service/script.go:134 +0x168\nhttp-server-driver/internal/service.(*ModelHandler).ServeHTTP(0xc001912080, {0x1bfd2b0, 0xc001ce80f0}, 0xc001966b40)\n\t/builds/core/drivers/http-server-driver/internal/service/handler.go:270 +0x405\ngithub.com/gorilla/mux.(*Router).ServeHTTP(0xc002c16480, {0x1bfd2b0, 0xc001ce80f0}, 0xc0019663c0)\n\t/go/pkg/mod/github.com/gorilla/mux@v1.8.1/mux.go:212 +0x1e2\nnet/http.serverHandler.ServeHTTP({0x1bf8e30?}, {0x1bfd2b0?, 0xc001ce80f0?}, 0x6?)\n\t/usr/local/go/src/net/http/server.go:3340 +0x8e\nnet/http.(*conn).serve(0xc00045e090, {0x1c02958, 0xc0021cacc0})\n\t/usr/local/go/src/net/http/server.go:2109 +0x665\ncreated by net/http.(*Server).Serve in goroutine 231\n\t/usr/local/go/src/net/http/server.go:3493 +0x485"}

