stringByAddingPercentEscapesUsingEncoding : NSUTF8StringEncoding을 사용하고 있습니다. 내 앱은 IOS 6과 IOS 7에서 실행 중이며 문제는 없지만 IOS 7에 문제가 있습니다.
NSString *strURL = [NSString stringWithFormat:@"%@app1.php?loc=%@", URL, [param stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
1. in IOS6 it's encoded like :
http://mydomain/app1.php?loc=Select%20Office%20location
2. in IOS7 it's encoded like :
http://mydomain/app1.php?loc=Select%C2%A0Office%C2%A0location
이제 문제는 PHP 서버가 아니오를 수락한다는 것입니다. 1 인코딩 IOS6에 의해 인코딩됨을 의미합니다. 따라서 내 앱이 IOS7에서 실행 중일 때 php 서버는 IOS6에서 반환하는 동안 결과가 0을 반환하면 누구 든지이 문제를 해결하는 데 도움이 될 수 있습니다. 미리 감사드립니다.
URL로 인코딩 된 "% C2 % A0"문자열은 UTF-8 인코딩의 유니 코드 "비 분리 공백"입니다.
wiki ( http://en.wikipedia.org/wiki/Non-breaking_space )를 참조하십시오 .
IMHO, URL 쿼리의 인코딩되지 않은 매개 변수 문자열에 유니 코드 "비 중단 공백"이 발생하는 것은 없습니다.
iOS 6에서 각각 iOS 7의 인코딩되지 않은 원래 매개 변수 문자열에 차이가 있는지 확인하려면 바이트를 살펴 봐야합니다. 예를 들어 NSData
UTF-8 인코딩을 사용하여 매개 변수 문자열에서 객체를 만들고이 NSData
객체를 콘솔.
NSString
개체 인쇄는 텍스트 편집기 또는 콘솔에서 동일한 모양을 가질 수 있습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다