これは、デモiOSアプリから呼び出す最初のAPIです。PHPに書いた簡単な文をラベルに戻したいだけです。
ただし、アプリで取得した場合、辞書の結果はnullになります。これはどのように作動しますか?***修正済み、以下のコードは機能しますが、あまり安全ではありません
PHPファイル:
index.php hosted on localhost using XAMPP (http://localhost/tutorials/index.php) if I echo "hi"; it shows on the page so the server is working.
<?php
if(function_exists($_GET['fe'])) {
$_GET['fe']();
}
function getLabel(){
$response['name']="Hello first API ever";
echo json_encode($response);
}
今Xcodeで私は持っています:
-(void)connectionDidFinishLoading:(NSURLConnection *)connection{
//Main parse
//Web data
NSDictionary*data=[NSJSONSerialization JSONObjectWithData:webData options:0 error:nil];
NSLog(@"%@",data);
NSString*label=[data valueForKey:@"name"];
_answer.text=label;
}
-(void)getData{
NSURL*url=[NSURL URLWithString:@"http://localhost/tutorials/index.php?fe=getLabel"];
NSURLRequest*request=[NSURLRequest requestWithURL:url];
connection = [NSURLConnection connectionWithRequest:request delegate:self];
if (connection) {
webData=[[NSMutableData alloc]init];
}
}
//Clear response
-(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response{
[webData setLength:0];
}
//Append data
-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{
[webData appendData:data];
}
-(void)connectionDidFinishLoading:(NSURLConnection *)connection{
//Main parse
//Web data
NSDictionary*data=[NSJSONSerialization JSONObjectWithData:webData options:0 error:nil];
NSLog(@"%@",data);
NSString*label=[data valueForKey:@"name"];
_answer.text=label;
}
ありがとう