2014-03-25 34 views
0

我有一個REST服務在本地apache服務器上運行。我試圖發送一個http請求來從一個ios應用程序觸發它。我嘗試了很多方法,但請求似乎無法到達服務器。IOS - 使用特定MIME類型的http請求

編輯:REST服務根據特定的MIME類型決定要調用什麼,這就是爲什麼我要設置內容類型。

這是我的時刻代碼:

- (IBAction)fetchTweet 
{ 
    NSURL *url = [NSURL URLWithString:@"http://127.0.0.1:8080/Jersey/rest/hello"]; 

    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; 

    [request addValue:@"text/html; charset=UTF-8" forHTTPHeaderField:@"Content-Type"]; 

    NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request  delegate:self]; 

    self.connection = connection; 
    [connection start]; 

} 


- (IBAction)go:(id)sender 
{ 
    [self fetchTweet]; 
    self.label.text = @"Working"; 
} 
+0

這將幫助你http://stackoverflow.com/questions/10080216/request-with-nsurlrequest – MCMatan

回答

0

這是一個同步請求。嘗試使用下面的代碼同步到服務器。至少這將確保一切運行良好。可以將responseData寫入文件以查看響應。

NSURL *url = [NSURL URLWithString:@"http://127.0.0.1:8080/Jersey/rest/hello"]; 

NSURLResponse *urlResponse = nil; 
NSData *responseData = nil; 

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; 
[request setHTTPMethod:@"GET"]; 
[request addValue:@"text/html; charset=UTF-8" forHTTPHeaderField:@"Content-Type"]; 

responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponse error:&theError]; 
+0

謝謝回答。我試圖使用這個,但它說「沒有已知的選擇器的類方法sendSychronousRequest:returningResponse。」 – user3461851

+0

你可以檢查框架組 - >其他框架,並檢查基礎框架是否存在或不存在 –

+0

基礎框架是存在的這可能是我可能在頭文件中錯誤地設置了一些東西 – user3461851