Я создаю приложение для сопоставления iOS на Objective C, где пользователю нужно постоянно нажимать на изображение, и при каждом нажатии на сервер вызывается запрос (match.php), чтобы проверить, найдено это изображение или нет. Если изображение присутствует на сервере, сервер отправит обратно положительный ответ, а если его нет, он не отправит никакого ответа.
Если получен положительный ответ, приложение отображает на экране предупреждение «Найдено». После каждого нажатия новое изображение предоставляется пользователю.
Моя проблема в том, что если я жду после нажатия на одно изображение, оно работает должным образом, так как я получаю желаемый положительный ответ из php-файла для этого конкретного изображения, и тогда предупреждение может отображаться или не отображаться. Но если я продолжу нажимать на последовательные изображения, я не получу старые ответы, и предупреждение не появится, даже если оно присутствует на сервере. Я получаю ответ только от последнего изображения, на котором я жду.
Есть ли решение для этого? Могу ли я поставить ответы в очередь, чтобы на каждый вызов сервера я получал ответ? В настоящее время кажется, что при каждом нажатии соединение перезаписывается и старые теряются?
Я использую NSURLConnection, чтобы сделать серверный вызов, и предупреждение отображается в connectionDidFinishLoading в зависимости от полученного ответа. В середине этого я также использую didReceiveData для добавления данных в ответ и также didReceiveResponse для проверки ответа.
Я знаю, что должен использовать NSURLSession, но решит ли это эту проблему, или мне нужно что-то еще сделать?
Задача ещё не решена.
Других решений пока нет …