MVC, веб-запросы, CookieContainers и Americart - PullRequest
0 голосов
/ 19 февраля 2011

Я хочу отправить содержимое корзины пользователя в стороннюю корзину (Americart), и я хочу сделать это в своем методе ActionResult, используя класс WebRequest.

Но Americart ожидает, что я добавлю форму в представление, и пользователь отправит ее непосредственно в Americart, когда пользователь нажмет «добавить в корзину».

Я считаю это неуклюжим на многих уровнях и предпочел бы, чтобы пользователь оставался на моем сайте, совершал покупки и позволял мне переносить содержимое моей корзины в Americart, когда пользователь нажимает "оформить заказ".

Таким образом, казалось простым занятием настроить ActionResult "Checkout", и в этом методе: (1) отправить содержимое моей корзины в Americart с помощью WeRequest, и (2) когда это сделано, перенаправить пользователя на страницу оформления заказа.

Но когда пользователь заходит на страницу оформления заказа в Americart, он говорит, что корзина пуста. До меня сразу дошло, что у Americart никогда не было возможности кукисировать пользователя, поскольку объект WebRequest делал «добавление в корзину», а не пользователь. Таким образом, пользователь прибывает без файла cookie и без товаров в корзине.

Итак, я хочу получить куки, которые назначает Americart, и сохранить их в CookieContainer объекта WebRequest, и я хочу перенести куки из CookiContainer и назначить их пользователю ПЕРЕД тем, как я перенаправлю их в Америкарт . Я хочу, чтобы сайт Americart мог читать файлы cookie, как если бы они сделали назначение файлов cookie непосредственно пользователю.

Можно ли это сделать? Я сомневаюсь, но достаточно надеюсь, чтобы спросить.

1 Ответ

0 голосов
/ 25 февраля 2011

Вы можете сделать это, но для этого потребуется внести некоторые изменения в настройку своей учетной записи, возможность не показывать корзину при добавлении в корзину (это может быть настройкой, которую они должны изменить), а затем, когда ваш покупатель вниз, просто переберите все элементы в корзине и передайте строку Americart add to cart в cart.cgi, а затем отправьте на оформление заказа.

...