标准库 web.res.client 改进,增加 http方法.接口函数名() 调用方式,例如 get.method() put.method() 并增加对PATCH方法支持。
标准库新增 web.rest.xmlClient 用于支持XML格式REST API
标准库新增 process.command 支持进程间函数响应式调用,其功能类似 thread.command,可跨进程使用,下面是演示:
import win.ui; /*DSG{{*/ mainForm = ..win.form( right=581;bottom=373;text="跨进程命令" ) mainForm.add( button={ bottom=355;right=519;left=297;top=309;z=1;text="发送跨进程命令";cls="button" }; edit={ bottom=298;right=555;left=28;multiline=1;top=17;z=2;edge=1;cls="edit" } ) /*}}*/ import process.command; //加入进程群组,使用GUID名字区分不同的进程群组 process.command.join("{870819C0-D702-4508-BB0A-5F09E514E23E}") //注册进程命令对象 var processObserver = process.command(); processObserver.testCmd = function(a,b,c){ mainForm.edit.appendText( "testCmd被调用,参数:",a,b,c,'rn' ); return 123; } //发送进程命令 mainForm.button.oncommand = function(id,event){ process.command.testCmd(1,2,",进程命令参数" ) } mainForm.show() win.loopMessage();
sqlite支持库绑定命名参数时,可选使用blob,utf8,utf16等名字前缀自定义字符串值存储方式,示例如下:
import sqlite var sqlConnection = sqlite(":memory:") if( not sqlConnection.existsTable("stringTable") ){ sqlConnection.exec( "create table stringTable(blobString,utf8String,utf16String);") } sqlConnection.prepare("insert into stringTable values (@blobString,@utf8String,@utf16String);" ).step( blobString = "指定以blob类型存储的二进制字符串"; utf8String = string.fromto("UTF8编码的字符串",0,65001); utf16String = string.toUnicode("UTF16编码的字符串"); ) io.open(); for rowid,blobString,utf8String,utf16String in sqlConnection.each("select rowid,* from stringTable") { io.print( rowid,blobString,utf8String,utf16String ) }