;************************ ;* server_example_function_library.pb ;* ;* Test library for the lweb server. ;* ;* Created and develobed by Linder Hard- und Software ;* ;* XIncludeFile "lhs_lib/NET/lhs_web_helper.pbi" Global.s ZumSenden ProcedureCDLL post_test(handler_Map_JSON.s, ContentData.s) Define *Text Define.s Encoded, TBD, Text, JSONStringToMap Define MyThreadJSON, File NewMap Header.s() File = CreateFile(#PB_Any, "/var/log/lhttpd/post_test.log") WriteStringN(File, "handler_Map_JSON:") WriteStringN(File, handler_Map_JSON) WriteStringN(File, "Content Data:") WriteStringN(File, ContentData) JSONStringToMap = handler_Map_JSON If JSONStringToMap <> lhs_web_helper::#error_string MyThreadJSON = ParseJSON(#PB_Any, JSONStringToMap) If MyThreadJSON ClearMap(Header()) ExtractJSONMap(JSONValue(MyThreadJSON), Header()) FreeJSON(MyThreadJSON) EndIf EndIf NewMap Response.s() TBD="

FormularPost


"+#CRLF$ ResetMap(Header()) While NextMapElement(Header()) TBD = TBD+"
"+MapKey(Header())+" : "+Header()+"

"+#CRLF$ Wend ContentData = URLDecoder(ContentData, #PB_UTF8) Text = ~"" + "" + ~"" + "Alle Client Headers"+TBD+"

Conent in JSON Format


"+ContentData+"" *Text = AllocateMemory(StringByteLength(Text, #PB_UTF8)) PokeS(*Text, Text, -1, #PB_UTF8) Encoded = Base64Encoder(*Text, MemorySize(*Text)) Response(lhs_web_helper::#cha_R_ResponseContentType) = lhs_web_helper::#response_string Response(lhs_web_helper::#cha_R_StringBase64) = Encoded Response(lhs_web_helper::#cha_R_ResponseType) = lhs_web_helper::mimetype("html") Response(lhs_web_helper::#cha_R_http_head_status) = "200 Ok" ZumSenden = lhs_web_helper::MapToJSONString(Response()) WriteStringN(File, "ZumSenden:") WriteStringN(File, ZumSenden) CloseFile(File) ProcedureReturn @ZumSenden EndProcedure