2012-01-26 27 views
0

我正在訪問服務器上的PHP腳本。 請求的URL是這樣的:ASIHTTPRequest setPostValue iPhone

example.com/cgi-bin/getEvent.cgi?EID=19573 

當我把在通過瀏覽器的請求,我找回我的預期結果。

但是,當我使用ASIHTTP表單請求時,我得到一個結果 就像EID沒有通過HTTP傳遞一樣。

NSString *eventID = @"19573"; 
NSString * const EVENT_URL = @"http://example.com/cgi-bin/getEvent.cgi"; 

-(void)callWebservice 
{ 
    NSURL *url = [NSURL URLWithString:EVENT_URL]; 
    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 
    [request setPostValue:eventID forKey:@"EID"]; 
    [request setNumberOfTimesToRetryOnTimeout:2]; 
    [request setDelegate:self]; 
    [request startAsynchronous]; 
} 

任何人都知道一種方法來查看完整的URL被請求? 或者有任何線索爲什麼這不起作用?

在此先感謝。

回答

1

我的猜測是你的PHP腳本期望參數被髮送到查詢字符串(即作爲GET請求)而不是POST參數。

如果是這樣的話,你可以解決它可以發送您的要求如下:

NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@?EID=%@",EVENT_URL,eventID]]; 
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 
+0

即固定的,謝謝! –