Подмена данных в ajax запросе (json)

koldun_org

Новичок
Регистрация
06.11.2018
Сообщения
10
Благодарностей
0
Баллы
1
Все здравствуйте.
Ситуация такая: Есть пошаговая форма. Каждый шаг отправляет ajax и формирует тело данных (json)
Допустим так
1 шаг ФИО и телефон. Нажали на кнопку, json данные ушли на сервер.
2 шаг адрес. Нажали на кнопку, и данные ФИО, телефон и адрес ушли на сервер..

На втором шаге нужно изменить номер телефона.
Подскажите пожалуйста как это можно сделать.
Я понимаю что можно js блок, и прописать изменение переменной. Но я не знаю название переменной где хранится json (там очень много js кода - да и не селен я в нем)
 

Zymlex

Moderator
Команда форума
Регистрация
24.10.2016
Сообщения
4 683
Благодарностей
2 431
Баллы
113
На втором шаге нужно изменить номер телефона.
Подскажите пожалуйста как это можно сделать.
В чём же основная проблема? Лучше всё же прикрепить пример.
Но я не знаю название переменной где хранится json (там очень много js кода - да и не селен я в нем)
Смахивает на изврат...
 

koldun_org

Новичок
Регистрация
06.11.2018
Сообщения
10
Благодарностей
0
Баллы
1
В чём же основная проблема? Лучше всё же прикрепить пример.

Смахивает на изврат...
Проблема в том что надо изменить передаваемые данные, и я не знаю как. Сайт показать не могу.
Если знаете решение (как в рамках программы изменить передаваемые данные ajax post) отблагодарю (USD) - В лычку пожалуйста...
 

nicanil

Moderator
Команда форума
Регистрация
06.03.2016
Сообщения
1 447
Благодарностей
1 149
Баллы
113
Одно из возможных решений - https://zennolab.com/discussion/threads/zablokirovat-ili-podmenit-js.46037/#post-341718

В том сообщении описывается метод ChangeResponse, он подменяет данные, которые мы получаем от сервера.
Есть ещё ChangeRequest - этот метод может подменять данные, которые мы отправляем на сервер, и в данной ситуации как раз он может помочь. Оба метода принимают одинаковые параметры, т.ч. описание из приведённого мною поста будет полезно, надо только будет изменить имя метода на ChangeRequest.
 
  • Спасибо
Реакции: koldun_org и Zymlex

koldun_org

Новичок
Регистрация
06.11.2018
Сообщения
10
Благодарностей
0
Баллы
1
Одно из возможных решений - https://zennolab.com/discussion/threads/zablokirovat-ili-podmenit-js.46037/#post-341718

В том сообщении описывается метод ChangeResponse, он подменяет данные, которые мы получаем от сервера.
Есть ещё ChangeRequest - этот метод может подменять данные, которые мы отправляем на сервер, и в данной ситуации как раз он может помочь. Оба метода принимают одинаковые параметры, т.ч. описание из приведённого мною поста будет полезно, надо только будет изменить имя метода на ChangeRequest.
Большое спасибо! Вроде то что нужно... (когда сделаю переведу на пиво)

В ProjectMaker пропала вкладка трафик (галочка в окнах стоит) Подскажите пожалуйста как исправить.
 

nicanil

Moderator
Команда форума
Регистрация
06.03.2016
Сообщения
1 447
Благодарностей
1 149
Баллы
113
Большое спасибо! Вроде то что нужно... (когда сделаю переведу на пиво)

В ProjectMaker пропала вкладка трафик (галочка в окнах стоит) Подскажите пожалуйста как исправить.
Радикальный метод (Внимание: будут сброшены настройки всех окон!) :
Project Maker -> Настройки -> Отладка -> в самом низу кнопка "Сбросить панели".
 

koldun_org

Новичок
Регистрация
06.11.2018
Сообщения
10
Благодарностей
0
Баллы
1
Одно из возможных решений - https://zennolab.com/discussion/threads/zablokirovat-ili-podmenit-js.46037/#post-341718

В том сообщении описывается метод ChangeResponse, он подменяет данные, которые мы получаем от сервера.
Есть ещё ChangeRequest - этот метод может подменять данные, которые мы отправляем на сервер, и в данной ситуации как раз он может помочь. Оба метода принимают одинаковые параметры, т.ч. описание из приведённого мною поста будет полезно, надо только будет изменить имя метода на ChangeRequest.
Здравствуйте.
Данные меняются но на сервер не уходят. Почему может быть? (Даже если меняю на тот же номер)
Код:
string num = project.Variables["num"].Value.ToString();
instance.ChangeRequest("https://site.ru",
    new List<string>
    {
        num
    },
    new List<string>
    {
        num
    }
);
Спасибо за сброс панели (помогло)
 

nicanil

Moderator
Команда форума
Регистрация
06.03.2016
Сообщения
1 447
Благодарностей
1 149
Баллы
113
Здравствуйте.
Данные меняются но на сервер не уходят. Почему может быть? (Даже если меняю на тот же номер)
Код:
string num = project.Variables["num"].Value.ToString();
instance.ChangeRequest("https://site.ru",
    new List<string>
    {
        num
    },
    new List<string>
    {
        num
    }
);
Спасибо за сброс панели (помогло)
Сам с этим методом никогда не работал, поэтому потребовалось немного времени,чтоб протестировать.

Делал на примере сайта http://programmerbook.ru/html/form/action/ (во вложении будет шаблон). Использовал этот сайт только потому, что он первый, который попался с формой и обработкой этой формы на стороне сервера, чтоб увидеть подменяются ли данные. Форма не ajax, но суть та же.
Внизу страницы форма, мы в ней выбираем ответ "нет", но в запросе делаем подмену на "yes" и на сервер уходит именно "yes", это видно по ответу сервера.
Если всё-равно будут затруднения то нужен сайт на котором осуществляется подмена (можно в личку). Если сайт палить не хочется, то можно другой сайт дать, но с такой же, или подобной, формой, чтоб на примере этого сайта сделать подмену.
 

Вложения

  • Спасибо
Реакции: p-sergei и volody00

koldun_org

Новичок
Регистрация
06.11.2018
Сообщения
10
Благодарностей
0
Баллы
1
Сам с этим методом никогда не работал, поэтому потребовалось немного времени,чтоб протестировать.

Делал на примере сайта http://programmerbook.ru/html/form/action/ (во вложении будет шаблон). Использовал этот сайт только потому, что он первый, который попался с формой и обработкой этой формы на стороне сервера, чтоб увидеть подменяются ли данные. Форма не ajax, но суть та же.
Внизу страницы форма, мы в ней выбираем ответ "нет", но в запросе делаем подмену на "yes" и на сервер уходит именно "yes", это видно по ответу сервера.
Если всё-равно будут затруднения то нужен сайт на котором осуществляется подмена (можно в личку). Если сайт палить не хочется, то можно другой сайт дать, но с такой же, или подобной, формой, чтоб на примере этого сайта сделать подмену.
Стукните пожалуйста мне в скайп (koldun_org)
 

nicanil

Moderator
Команда форума
Регистрация
06.03.2016
Сообщения
1 447
Благодарностей
1 149
Баллы
113
Скорее всего в зенке баг при подмене данных, когда отправка идёт с помощью AJAX. С простой формой всё прошло хорошо. Нашёл AJAX форму, но как и у ТС - данные подменились, но запрос словно завис (ответа от сервера я так и не дождался).
Версия ZP - 5.22.0.0

(это сообщение скорее для тех, кто когда-то попадёт на этот топик из Гугла)
 

koldun_org

Новичок
Регистрация
06.11.2018
Сообщения
10
Благодарностей
0
Баллы
1
Короче это баг программы! ((( - не передает ajax после изменения...
 

vrska

Client
Регистрация
07.02.2010
Сообщения
569
Благодарностей
389
Баллы
63
А может сервер проверяет, что вы ему шлете?
 

nicanil

Moderator
Команда форума
Регистрация
06.03.2016
Сообщения
1 447
Благодарностей
1 149
Баллы
113
Во вложении два шаблона. Один написал я, второй - ТС (он сам не может добавить). Сайты разные, но результат один - запрос не уходит. Кому не лень, проверьте у себя. Да и на сам код можете посмотреть, возможно мы оба допустили какую-то ошибку.
 

Вложения

  • 37,6 КБ Просмотры: 16
  • 23,8 КБ Просмотры: 13

esp094

Client
Регистрация
07.09.2017
Сообщения
25
Благодарностей
3
Баллы
3
Так и есть - недавно проверял - не уходит
 
  • Спасибо
Реакции: nicanil

nicanil

Moderator
Команда форума
Регистрация
06.03.2016
Сообщения
1 447
Благодарностей
1 149
Баллы
113
Сегодня вышла в свет версия 5.23.0.0
В этой версии программы данная ошибка исправлена!


(опять-таки, это сообщение для тех, кто когда-то попадёт на этот топик из Гугла)
 

strannikk

Client
Регистрация
22.01.2010
Сообщения
124
Благодарностей
1
Баллы
18
Добрый день. Подскажите, как в заменяемое значение подставить переменную? на 7 зенке у меня код вида :
instance.ChangeRequest("https://blog.com/",
new List<string>
{
"unknown nature"
},
new List<string>
{
"<a href='123.html'><img src='http://123.jpg' alt=''></a>",
}
);
работает, а такой:
var par = project.Variables["new_post"].Value;

instance.ChangeRequest("https://blog.com/",
new List<string>
{
"unknown nature"
},
new List<string>
{
par,
});
не работает.
 

nicanil

Moderator
Команда форума
Регистрация
06.03.2016
Сообщения
1 447
Благодарностей
1 149
Баллы
113
Добрый день. Подскажите, как в заменяемое значение подставить переменную?
Здравствуйте.

А что конкретно не работает? Не меняется значение или происходит ошибка?
Если не меняется значение, то перепроверьте, чтоб в переменной project.Variables["new_post"].Value было сохранено необходимое для подстановки значение.

Какая у Вас версия программы?
Только что проверил на 7.2.1.0 - всё хорошо отработало.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)