oczekiwana odpowiedźContentLength zwraca -1
Witam muszę utworzyć progressView, gdy ładuję dane z mojej usługi internetowej.
Właściwie zawsze oczekiwany argumentContentLength zwraca -1.
Po przejrzeniu wielu podobnych problemów wygląda na to, że moja usługa nigdy nie wysyła treści Content-Length :.
Następnie sprawdzam za pomocą CURL i oto wynik:
< HTTP/1.1 200 OK
< Date: Thu, 21 Jun 2012 10:04:39 GMT
< Server: Apache/2.2.16 (Debian)
< X-Powered-By: PHP/5.3.3-7+squeeze9
< cache-control: no-cache
< Vary: Accept-Encoding
< Content-Type: text/html; charset=UTF-8
< Content-Length: 3239
< Connection: Keep-Alive
< Set-Cookie: PHPSESSID=u4o4i9dofdgnkfmtnf163635j6; path=/
a tutaj jest mój kod, aby złapać długość
long long expectDataSize;
long long currentDataSize;
....
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSHTTPURLResponse *)response
{
NSLog(@"expect content length %lld", [response expectedContentLength]);
expectDataSize = [response expectedContentLength];
currentDataSize = 0;
}
Czy ktoś już widział ten problem?