SwiftCGIResponder
v0.11.0.
SwiftCGIResponderとは何ですか? SwiftCGIResponder 、SWIFTでCGIプログラムを作成するときに使用できるその他の機能を提供します。
それは開発中の実験的なライブラリであり、今のところ役に立たない。
import CGIResponder
var responder = CGIResponder ( )
responder . status = . ok
responder . contentType = ContentType ( pathExtension : . txt , parameters : [ " charset " : " UTF-8 " ] ) !
responder . content = . string ( " Hello, World! n " , encoding : . utf8 )
try ! responder . respond ( )
// -- Output --
// Status: 200 OK
// Content-Type: text/plain; charset=UTF-8
//
// Hello, World!
//サンプルディレクトリに他のサンプルが表示される場合があります。
Swift Package Managerを簡単に使用して、プロジェクトにCGIResponderをインポートできます。
Package.swiftの例// swift-tools-version:5.1
// The swift-tools-version declares the minimum version of Swift required to build this package.
import PackageDescription
let package = Package (
name : " MyCGI " ,
products : [
// Products define the executables and libraries produced by a package, and make them visible to other packages.
. executable ( name : " cgi1 " , targets : [ " CGI1 " ] ) ,
. executable ( name : " cgi2 " , targets : [ " CGI2 " ] ) ,
. library ( name : " CGIManager " , type : . dynamic , targets : [ " CGIManager " ] ) ,
] ,
dependencies : [
// Dependencies declare other packages that this package depends on.
. package ( url : " https://github.com/YOCKOW/SwiftNetworkGear.git " , . branch ( " master " ) ) ,
. package ( url : " https://github.com/YOCKOW/SwiftCGIResponder.git " , . branch ( " master " ) ) ,
] ,
targets : [
// Targets are the basic building blocks of a package. A target can define a module or a test suite.
// Targets can depend on other targets in this package, and on products in packages which this package depends on.
. target ( name : " CGI1 " , dependencies : [ " SwiftCGIResponder " , " SwiftNetworkGear " ] ) ,
. target ( name : " CGI2 " , dependencies : [ " SwiftCGIResponder " , " SwiftNetworkGear " ] ) ,
. target ( name : " CGIManager " , dependencies : [ " SwiftCGIResponder " ] ) ,
. testTarget ( name : " CGIManagerTests " , dependencies : [ " CGIManager " ] ) ,
]
)MITライセンス。
詳細については、「license.txt」を参照してください。