跟我一起学“仓颉Web”基础编程-仓颉Server
·
目录
一、配置Stdx
想要在仓颉项目里,去开发Web编程,需要额外下载仓颉stdx扩展包和OpenSSL,这里的内容,我在环境安装里已经介绍,这里不再赘述,在编译器创建项目后,找到cjpm.toml,如图所示

compile-option = "-lcangjie-dynamicLoader-opensslFFI"
[target.x86_64-w64-mingw32]
[target.x86_64-w64-mingw32.bin-dependencies]
path-option = ["D:\\Software\\Develop\\Huawei\\Cangjie\\stdx\\windows_x86_64_cjnative\\static\\stdx"]
保存,选择“Yes”,然后更新项目和构建
cjpm clean
cjpm update
cjpm check
cjpm build
控制台出现“Success”即可
二、启动Server
核心代码
package WebStudy
import stdx.net.http.*
main(): Unit {
server()
}
// 初识Server
public func server(): Unit {
// 构建服务
let server: Server = ServerBuilder().addr('127.0.0.1').port(8080).build()
let web: FuncHandler = FuncHandler { httpContext: HttpContext =>
httpContext.responseBuilder.body('你好,仓颉Web!')
}
server.distributor.register('/', web)
println('Web服务已启动...')
server.serve()
}
在浏览器访问
http://localhost:8080/
运行结果

出现乱码,原因就是,字符编码出现问题,浏览器默认ISO-8859-1,如果想要中文正常显示,需要修改代码,设置编码为UTF-8。
核心代码
package WebStudy
import stdx.net.http.*
main(): Unit {
server()
}
// 初识Server
public func server(): Unit {
// 构建服务
let server: Server = ServerBuilder().addr('127.0.0.1').port(8080).build()
let web: FuncHandler = FuncHandler { httpContext: HttpContext =>
// 设置 中文可以显示的UTF-8
httpContext.responseBuilder.header('Content-Type', 'text/html;charset=UTF-8')
httpContext.responseBuilder.body('你好,仓颉Web!')
}
server.distributor.register('/', web)
println('Web服务已启动...')
server.serve()
}
运行结果

三、小结
本章为大家详细的介绍了仓颉Server的内容,下一章为大家介绍Http请求的内容。最后,创作不易,如果大家觉得我的文章对学习仓颉Web基础编程有帮助的话,就动动小手,点个免费的赞吧!收到的赞越多,我的创作动力也会越大哦,谢谢大家🌹🌹🌹!!!
所有评论(0)