Object Strageデータを操作するメソッドを作成
トークンデータを作成したので、次はデータを操作するメソッドを作っていきましょう。NSDataを引数に成功したかどうかのBool値を返すsetData(into:)メソッドを作成します。
func setData(into data: NSData) -> Bool {
var isSuccess = false
//トークンを元にリクエストを投げる
if !(xAuthToken == "") {
var requestOptions: [ClientRequest.Options] = []
requestOptions.append(.schema("https://"))
requestOptions.append(.hostname(self.publicAccessPoint))
requestOptions.append(.path("/v1/AUTH_" + self.projectId + "/" + self.containerName + "/" + self.fileName))
requestOptions.append(.method("PUT"))
var headers = [String:String]()
headers["X-Auth-Token"] = xAuthToken
headers["Content-Type"] = "application/json"
requestOptions.append(.headers(headers))
let request = HTTP.request(requestOptions) { response1 in
do {
let body = NSMutableData()
try response1?.readAllData(into: body)
isSuccess = true
} catch {
print("error")
}
}
request.end(data)
}
return isSuccess
}
続いて、Object Strageデータを取得するメソッドを作成します。成功すればSwiftyJSONのJSONクラスを返し、失敗すればnilを返すメソッドです。
func getData() -> JSON? {
if !(xAuthToken == "") {
var requestOptions: [ClientRequest.Options] = []
requestOptions.append(.schema("https://"))
requestOptions.append(.hostname(self.publicAccessPoint))
requestOptions.append(.path("/v1/AUTH_" + self.projectId + "/" + self.containerName + "/" + self.fileName))
requestOptions.append(.method("GET"))
var headers = [String:String]()
headers["X-Auth-Token"] = xAuthToken
headers["Content-Type"] = "application/json"
requestOptions.append(.headers(headers))
var responseJson = JSON("")
let request = HTTP.request(requestOptions) { response1 in
do {
let body = NSMutableData()
try response1?.readAllData(into: body)
let jsonBody = JSON(data: body)
responseJson = jsonBody
} catch {
print("error")
}
}
request.end()
return responseJson
} else {
return nil
}
}
今「旬」のテクノロジーや革新的なサービスを一挙紹介!
オープンイノベーションを支える国内外の最新事例を始め、最先端の技術を活用しサービスを展開している企業やコミュニティの皆さまより、全32セッション(クラウド・ロボティックス・IoT・DevOps・ビックデーターなど)が予定されています。
インフラエンジニアも、開発エンジニアも、営業の方も、そうでない方も、クラウドを活用した、最新のサービスやテクノロジーに興味のある方ならどなたでも参加していただけます。イベント開催の二日間、今「旬」のテクノロジーやビジネスをお楽しみください。
