За последние 24 часа нас посетили 22934 программиста и 1243 робота. Сейчас ищут 736 программистов ...

Выполнить код JS/AJAX на PHP

Тема в разделе "JavaScript и AJAX", создана пользователем AntiWin, 25 фев 2017.

Метки:
  1. AntiWin

    AntiWin Новичок

    С нами с:
    25 фев 2017
    Сообщения:
    5
    Симпатии:
    0
    Здравствуйте!
    Имеется динамический html. В котором присутствует кнопка создать отчет. После нажатия на нее выполняется JS. Который генерирует ссылку на скачивание файла. Я в JS полный 0. Хотелось бы понять какие данные и куда нужно отправить, что бы получить эту заветную ссылку. Прикладываю код в файле.
     

    Вложения:

    • txt.txt
      Размер файла:
      22,5 КБ
      Просмотров:
      3
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    @AntiWin долго там разбираться. Ты даже пример ссылки не показал и какой код за кнопку "создать отчёт" отвечает и где там сама кнопка.
     
  3. AntiWin

    AntiWin Новичок

    С нами с:
    25 фев 2017
    Сообщения:
    5
    Симпатии:
    0
    Код кнопки:
    HTML:
    1. <a class="Button_Usability ButtonGreen big" href="javascript:document.getElementById(&#39;ctl00_cphContent_lnkDownload&#39;).click();" id="ctl00_cphContent_lnkDownload_a" title="">Создать Отчёт</a><input type="submit" name="ctl00$cphContent$lnkDownload" value="Создать Отчёт" onclick="return showWait(&quot;ctl00_cphContent_WaitingDownload&quot;);WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$cphContent$lnkDownload&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, false))" id="ctl00_cphContent_lnkDownload" style="display:none;" />
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    @AntiWin это видимо .NET WinForms или ещё что-то в этом духе, где автогенерирован JS и там ничего не понятно
     
  5. AntiWin

    AntiWin Новичок

    С нами с:
    25 фев 2017
    Сообщения:
    5
    Симпатии:
    0
    Я только понял, что там используется JSON. И все как то на нем завязано.
     
  6. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    Можешь через fiddler посмотреть какие запросы делает сайт, может станет понятнее
     
  7. AntiWin

    AntiWin Новичок

    С нами с:
    25 фев 2017
    Сообщения:
    5
    Симпатии:
    0
    fiddler видит только что скрипт перенаправил браузер на эту же страницу, на которой и была кнопка: mypages/network?iframeUrl=Reports%2FEmailAR.aspx&showSideMenu=true
    на которой уже сгенерирована ссылка на файл вида: iframe/Reports/EmailAR.aspx?JSESSIONID=B9BCB8AE0A6007586E2A43B034FAE1B227F37342FFE188996B857F9588D94045&iframeId=contentIframe&widthClass=widthAuto&thcat=&thclass=&locale=ru_RU&showSideMenu=true&isMobile=false&fReady=y

    и передает данные серверу:
    Код (Text):
    1. ctl00_RadScriptManager1_TSM=;;System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35:en-US:fa6755fd-da1a-49d3-9eb4-1e473e780ecd:ea597d4b:b25378d2;Telerik.Web.UI, Version=2014.2.724.35, Culture=neutral, PublicKeyToken=121fae78165ba3d4:en-US:cbcc33a2-4a25-4f6b-85e3-8e20bc385048:16e4e7cd:f7645509:2003d0b8:24ee1bba:f46195d3:1e771326:88144a7a:aa288e2d:258f1c72&__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=&__EVENTVALIDATION=6l1rGG7C1MNIP2beH/vfd4PFXKFHTzXSu2OSuBEnc3k/mqg0cuWWOu9PucK2L+ytPhTaJITLiT9hvNVA35y2p+9D8de+RY2wiSTqf1zLpqsRSP0LO+0w2QEh6h/7AzLzliVlZ0+4Z9Web+SlzNxapkEKq/w=&ctl00$cphContent$cmbPeriod=2017  03&ctl00_cphContent_cmbPeriod_ClientState=&ctl00$cphContent$cmbDownline=1-ый уровень&ctl00_cphContent_cmbDownline_ClientState=&ctl00$cphContent$lnkDownload=Создать Отчёт
    только все данные прогнаны через htmlsecialchars
     
  8. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    @AntiWin думаю проще владельцов сайта с этими отчётами попросить сделать API, или через human emulator/phantom.js/selenium кликать на кнопку
     
  9. AntiWin

    AntiWin Новичок

    С нами с:
    25 фев 2017
    Сообщения:
    5
    Симпатии:
    0
    А может кто помочь понять в каком месте генерируются эти данные? попробую их спарсить и отправить постом серверу вместе с куками. а там уже спарсить ссылку.