Я собираюсь использовать прозрачный редирект Брэйнтрите на проект я придумываю, и поразмыслив об этом самом, я думаю, что лучший вариант, чтобы сломать форму вверх на две страницы. Форма на первой странице добавляется в ваше приложение и включает имя учетной записи, имя пользователя и т. Д. Форма на второй странице является только платежной информацией и отправляется в Брейнтри.
Таким образом, вы можете проверить их информацию на первом шаге. Если окажется, что в их адресе электронной почты есть опечатка, и их невозможно достичь, или их имя пользователя уже принято, или их пароль и подтверждение пароля не совпадают или что-то еще, тогда они могут исправить это, прежде чем Braintree будет обвинять их карта. Вы определенно не хотите, чтобы кто-то заплатил вам, а затем узнал, что их учетная запись не была создана успешно, или у вас появятся очень недовольные клиенты.
Итак, две страницы кажутся мне самым чистым способом сделать это. Я не смотрел на процесс, который использует 37signals - я предполагаю, что они используют Javascript, чтобы поймать отправку формы, а затем отправить информацию об учетной записи в свое приложение для проверки и сохранения. Если это не так, отображается сообщение об ошибке. Если это так, они позволяют передать форму в Брейнтри. Это позволит им сохранить форму регистрации на одной странице, но похоже, что это было бы грязно для меня. Вы можете посмотреть javascript своего сайта и посмотреть, что вы можете видеть.
Редактировать - Да, похоже, это то, что они делают. Они используют Prototype, с которым я не очень хорошо знаком, но вы можете увидеть их код для себя at the bottom of this file. На самом деле это не так уж плохо, я мог бы попробовать это сам.
Подумайте, почему значения не возвращаются. Вы поняли это. Я подтвердил, отключив javascript, что действительно возможно вернуть их из BrainTree по вашему желанию. Мне нужно сделать то же самое и убедиться, что это возможно, прежде чем подписываться на эту услугу. возможно, вам нужно каким-то образом зарегистрировать «известные» параметры строки запроса. Вы поняли это? –