これはxml:SwiftyXMLParserを解析するのにこのライブラリを使用していますが、残念ながらIOSの応答から結果の配列を取得できませんでしたが、ブラウザで見ることができますsee this linkまたはsample of respond!確かにAPIのURLからXMLを解析できません
これは私の操作です:
URLSession.shared.dataTask(with: NSURL(string: urlString)! as URL, completionHandler: { (data, response, error) -> Void in
if error != nil {
print(error)
return
}
if let data = data {
let xml = XML.parse(data)
print(xml)
//tried xml["results"]["0"] also didn't work
}
}).resume()
これは、IOSの私の出力です:
<response version="2">
<query>ios</query>
<location>austin, tx</location>
<clickedCategories/>
<paginationPayload/>
<radius>25</radius>
<dupefilter>true</dupefilter>
<highlight>false</highlight>
<start>1</start>
<end>10</end>
<pageNumber>0</pageNumber>
<totalresults>315</totalresults>
<results>
//This is array but No results!!
<\results>
だから誰もがなぜ知っていますか?そしてどうやって?
ありがとうございます。
JSONと私の試み:
indeedAPIは=「api.indeed.com/ads/apisearch?publisher=4935138002921571 & Q =(検索語)&形式= JSON & L =%の2C +がTX &ソートせ= &半径= 50 & ST = & JT = &開始= &限界= 10 &フロマージュ= &フィルタ= & LatLongブログ= 1 & CO = & CHNL = & userip = 1.2.3.4 & V = 2"あなたがresult
エントリを探しているなら
let googleYoutubeAPIUrl = URL(string: indeedAPI.addingPercentEncoding(withAllowedCharacters: CharacterSet.urlQueryAllowed)!)
let request:URLRequest = URLRequest(url: googleYoutubeAPIUrl!, cachePolicy: NSURLRequest.CachePolicy.reloadIgnoringCacheData, timeoutInterval: 5.0)
OperationQueue.main.cancelAllOperations()
let task = URLSession.shared.dataTask(with: request, completionHandler: { data, response, error in
if let _ = error {
print(error.debugDescription)
return
}
if let data = data {
completion(JSON(data: data))
} else { print("data nil"); return }
})
task.resume()
{
"paginationPayload" : "",
"location" : "%2C tx",
"dupefilter" : true,
"results" : [
// also no results
],
"totalResults" : 0,
"version" : 2,
"end" : 0,
"pageNumber" : 0,
"start" : 0,
"query" : "ios developer",
"highlight" : true
}
@Robありがとう、私は追加した私の出力 –
@Rob申し訳ありませんもう一度、私が編集しました私の質問。ありがとうございます –
'xml [" results "]'は動作しますか? – Larme