2011-05-19 21 views
0

如果URL請求是從iPhone應用程序創建的,請求所針對的服務是否可以識別該應用程序?通常,服務可以看到發出請求的IP地址,但包含在請求中的更多標識信息?我的目標是確保應用程序無法識別。通過URL請求識別應用程序

+0

你有沒有看了看HTTP頭呢?每個請求都有很多標題。你讀過這個嗎? http://en.wikipedia.org/wiki/List_of_HTTP_header_fields具體來說,你看過User Agent頭文件嗎? – 2011-05-19 09:56:11

+0

我還沒試試。謝謝。 – CastToInteger 2011-05-19 10:33:34

+0

我試過了,但「allHTTPHeaderFields」返回一個空字典。 – CastToInteger 2011-05-19 10:42:44

回答

1

登錄模擬器網絡流量到一個文件:

sudo tcpdump -s 0 -A -i en0 port 80 > log.txt 

然後讀取文件,看看你的應用程序的行爲從瀏覽器有什麼不同。請注意您的網絡接口可能有所不同。運行ifconfig -a以查看您是在en0,en1還是什麼。

您可以更改用戶代理和任何其他標題,如果你需要......

  • 如果您正在使用ASIHTTPRequest
    [ASIHTTPRequest setDefaultUserAgentString:@"firefox blah blah"];

  • 如果您正在使用NSMutableURLRequest:
    [request setValue:@"firefox blah" forHTTPHeaderField:@"User-Agent"];

+0

謝謝,正是我在找的東西。我看到應用程序名稱正由iOS的UserAgent字段中傳輸。我想不會有任何方法來避免這種情況。 – CastToInteger 2011-05-19 11:29:48

0

您可以將應用程序的參數傳遞給服務。 http://..url?param1=..&app=myApp

+0

你的答案與我試圖達到的完全相反。 – CastToInteger 2011-05-19 10:34:00

相關問題