//设置多线程服务端 import win.ui; /*DSG{{*/ mainForm = win.form(text="多线程服务端进阶";right=759;bottom=469) mainForm.add( edit={cls="edit";left=20;top=9;right=744;bottom=196;dl=1;dr=1;dt=1;edge=1;multiline=1;vscroll=1;z=1}; static={cls="static";text="Static";left=20;top=207;right=740;bottom=451;db=1;dl=1;dr=1;dt=1;z=2} ) /*}}*/ //HTTP 服务端开发指南: doc://guide/quickstart/web-server.md import wsock.tcp.simpleHttpServer; /* 可在 wsock.tcp.simpleHttpServer 命名空间指定 startUrl 函数的预设选项, 具体有哪些选项请查看 wsock.tcp.simpleHttpServer.startUrl() 函数源码。 直接使用 wsock.tcp.simpleHttpServer.mainThread 也行。 */ namespace wsock.tcp.simpleHttpServer{ //startIp = "0.0.0.0"; //不限制本机 IP //startPort = 8615; //不指定端口时会自动分配空闲端口 threadGlobal = { mainForm = ..mainForm }; //指定 HTTP 服务线程的默认全局变量,注意定义线程函数的作用域同名变量不能是局部变量 } //io.open() //打开控制台查看线程错误信息 var url = wsock.tcp.simpleHttpServer.startUrl( function(response,request,session){ response.write("hello 点这里"); mainForm.edit.print( "HTTP 请求:",request.path ); /* 如果想更高级一点,这里还可以来个 web.rpc.jsonServer, 参考「范例 » Web 应用 » JSON » HTTP-RPC-JSON 服务端 」 */ } ); import web.form; var wb = web.form(mainForm.static); wb.go(url); mainForm.show(); win.loopMessage();