2014-01-17 71 views
0

我在iPhone應用程序中使用Omniture SiteCatalyst。它使用get請求通過其sdk在內部命中服務器。但是,我遇到了一些請求未到達Omniture服務器的問題。正在發送的獲取請求的長度取決於請求的類型(大約900個字符)。 我的問題是在iOS應用程序中獲取請求長度是否有限制?如果是的話, 如果請求超出限制,它將如何表現?在iOS中獲取請求長度限制

回答

0

理論上,如果URL符合RFC 2396,那很好。根據文檔

如果路徑是 傳遞的路徑不正確,則NSURL類無法創建新的NSURL對象;該路徑必須符合RFC 2396. 不會成功的案例的例子是包含空格 字符和高位字符的字符串。如果創建NSURL對象 失敗,創建方法返回nil,您必須準備好 句柄。如果您使用文件系統路徑創建NSURL對象,則 應使用fileURLWithPath:或initFileURLWithPath:來處理URL路徑和文件系統路徑之間的細微差異。如果 希望容忍格式不正確的路徑字符串,則需要使用Core Foundation框架提供的 函數來清理 字符串。

但是有些時候存在專用字符的問題,例如,空間,口音和其他。您必須[NSURL URLWithString:[urlString stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]];

也可能服務器無法處理很長的URL,如果服務器上有任何限制,服務器將簡單地截斷其餘的URL字符串,如果這是一個問題,那麼服務器也將返回414錯誤URL長。