transfer image file from WebsocketServer to WebsocketClient failed with put_var() and put_packet()

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By flyshuttle

Server Side:
var SreenMonitorImage =“res://Resources/001.jpg”
var image = Image.new()
image.load(SreenMonitorImage)
server.get_peer(id).put_var(image)

Client Side:
var received_data = _client.get_peer(1).get_var()
var image = Image.new()
image.load_jpg_from_buffer(received_data)
get_node(“…/MainLevel/MonitorBoard/MeshInstance3d”).texture.set_data(image)

The fault at the Client side:
“Invalid type in function ‘load_jpg_from_buffer’ in base ‘Image’. Cannot convert argument 1 from Object to PackedByteArray.”
How could I make the right conversion?

I tried at server side as follows:
var image2 = image.get_data()
server.get_peer(id).put_packet (image2)

But with the fault at Server side:

“E 0:00:07:0639 _process: Condition “_out_buf_size && (wslay_event_get_queued_msg_length(_data->ctx) + p_buffer_size >= (1ULL << _out_buf_size))” is true. Returning: ERR_OUT_OF_MEMORY
<C++ Source> modules/websocket/wsl_peer.cpp:245 @ put_packet()
server.gd:68 @ _connected()
server.gd:44 @ _process()”

The size of image is just 8k. What’s the problem and how to solve it?