2011-12-31 34 views
0

我想通過以下目標C資源路徑從服務器檢索一些信息。然而,我無法爲傳遞給服務器的資源路徑改變讓我的結果如下圖所示(服務器控制檯)無法正確解釋資源路徑中的格式說明符

//Objective C code 
NSString *resourcePath = [NSString stringWithFormat:@"/sm/search?limit=100&term=%@&types%5B%5D=users&types%5B%5D=questions&types%5B%5D=topics",searchString]; 


//Server console 
[GET /sm/search?limit=100&term=Afhd&types5803200164=users&types51107296256=questions&types5368849=topics] 

我如何更新我的代碼,使服務器能夠識別正則表達式(% 5B%5D)在我的資源路徑而不是轉換它們?

+0

這些不是正則表達式,而是字符串格式。你想要達到什麼目的? – fge 2011-12-31 14:44:29

+0

我想在服務器上發佈以下URL「/ sm/search?limit = 100&term =%@&types%5B%5D = users&type%5B%5D = questions&types%5B%5D = topics」。我不希望在發佈到服務器 – Zhen 2011-12-31 14:47:31

+0

時將%5B%D轉換爲其他值。如果您嘗試使用純字符串而不是'stringWithFormat',該怎麼辦? – fge 2011-12-31 14:49:32

回答

1

當您使用stringWithFormat時,表示格式說明符以%開頭。

如果你想在輸出中保留%5d等完整的,你必須加倍百分號:%%5d

因此,除了term=%@中的一個外,您必須將其全部翻倍,以便stringSearch的值得到結果。