Проверка квитанции о покупке в приложении без внешнего сервера?

#iphone #objective-c #ios

#iPhone #objective-c #iOS

Вопрос:

Я хотел бы подтвердить квитанцию о покупке в приложении, отправив JSON для покупки.itunes.apple.com/verifyReceipt , но я не уверен, как это сделать. Я могу найти множество руководств о том, как это сделать с помощью php-сервера, но я не использую внешний сервер для своей покупки. Помочь?

Ответ №1:

Бывают случаи, когда проверка квитанций является необходимой вещью, но ваш случай не похож на один из таких случаев. В вашем случае вы получаете квитанции непосредственно из StoreKit и используете их в приложении.

Основная причина, по которой кто-то должен был бы проверять квитанции, заключается в том, что они «доставляют» контент в приложение из внешнего источника. В таких случаях проверка квитанции необходима, поскольку квитанция поступает из ненадежного источника (приложение может отправить любую квитанцию, которую захочет).

При этом нет причин, по которым вы не можете точно следовать процессу проверки локальных квитанций (при желании).

Комментарии:

1. Я думал, что пользователь со взломанным телефоном может подделать ответ с серверов Apple, чтобы «обмануть» приложение, заставив его думать, что покупка была совершена. Вы хотите сказать, что это на самом деле не так?

2. Это, безусловно, возможно, но если этот пользователь настолько хитер, он взломает файл hosts и заставит его «подделать» проверку Apple. Вы не сможете реально защититься от всех этих сценариев, если не включите в процесс внешний сервер.