<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: XMLHttpRequest object]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=10846</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=10846&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: XMLHttpRequest object».]]></description>
		<lastBuildDate>Wed, 23 Sep 2015 07:44:01 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=97653#p97653</link>
			<description><![CDATA[<p>А вот и минусы метода:<br /><a href="http://ahkscript.org/boards/viewtopic.php?f=7&amp;t=9554&amp;p=52984#p52984">http://ahkscript.org/boards/viewtopic.p … 984#p52984</a></p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Wed, 23 Sep 2015 07:44:01 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=97653#p97653</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96242#p96242</link>
			<description><![CDATA[<p>Недавно был подобный <a href="http://forum.script-coding.com/viewtopic.php?pid=95813#p95813">вопрос</a>. Ведь в теле страницы есть и содержимое скрипта, и данные для обработки.<br />Возможно же как то загрузить только текстовое содержимое в какую то среду типа &quot;htmlfile&quot; или что то другое, и использовать возможности имеющихся на странице скриптов, браузер же это как то так делает?</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Tue, 04 Aug 2015 20:47:46 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96242#p96242</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96241#p96241</link>
			<description><![CDATA[<div class="quotebox"><cite>_gruz пишет:</cite><blockquote><p>попробуйте так</p></blockquote></div><p>С какого перепугу?<br /></p><div class="quotebox"><cite>_gruz пишет:</cite><blockquote><div class="codebox"><pre><code>StrLen(clp)</code></pre></div></blockquote></div><p>Что такое clp?<br /></p><div class="quotebox"><cite>_gruz пишет:</cite><blockquote><div class="codebox"><pre><code>HttpObj1.Open(&quot;GET&quot;,_G,true)                    ;the third parameter means, that it will be working asynchronously</code></pre></div></blockquote></div><p>Не проще ли false, т.е. synchronously, и никакой Sleep не нужен?<br /></p><div class="quotebox"><cite>_gruz пишет:</cite><blockquote><div class="codebox"><pre><code>Sleep, 5000
    If (HttpObj1.Status) MsgBox % HttpObj1.ResponseText
</code></pre></div></blockquote></div><p>И даже, если оставить третьим параметром true, ни в коем случае не пробуйте делать так!<br />Лучше уж<br /></p><div class="codebox"><pre><code>HttpObj1.WaitForResponse()
MsgBox % HttpObj1.ResponseText
</code></pre></div><p>или<br /></p><div class="codebox"><pre><code>
while not HttpObj1.Status
    Sleep 100
MsgBox % HttpObj1.ResponseText
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (shiz)]]></author>
			<pubDate>Tue, 04 Aug 2015 20:45:19 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96241#p96241</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96240#p96240</link>
			<description><![CDATA[<p>Так смысл всего этого был в том, чтобы нажать кнопку. Так, что этот вариант не подходит.<br />Вот я наткнулся на такой код и там пишут, что кнопка не нажимается из-за того, что <br /></p><div class="quotebox"><blockquote><p>Are you trying to fire an event on the ajax response body, as if it was loaded into the DOM ? Stop me if I&#039;m wrong, but the ajax request response is not loaded into the current DOM, so you cannot execute scripts on it, event if it has been parsed as a document. Take a look at the XMLHttpRequest spec : point 5-4 says &quot;with scripting disabled&quot;</p></blockquote></div><div class="codebox"><pre><code>var sendToLog;
var xhr = new XMLHttpRequest();
xhr.open(&#039;GET&#039;, &#039;/newsfeed-simulator&#039;, true);
xhr.responseType = &#039;document&#039;;
xhr.onload = function(e) {
  if (this.status == 200) 
  {

    var event = xhr.response.createEvent(&quot;MouseEvents&quot;);
event.initMouseEvent(&quot;click&quot;, true, true, window,
            0, 0, 0, 0, 0,
            false, false, false, false,
            0, null);
xhr.response.getElementById(&quot;simulate-button&quot;).dispatchEvent(event);

    $(xhr.response).ready(function() 
    {
        console.log(xhr.response.body);
        sendToLog = xhr.response.getElementsByClassName(&quot;story-score&quot;);
    });

    chrome.extension.sendMessage({writeToLog: sendToLog});  

}
}

xhr.send();</code></pre></div><p><a href="http://stackoverflow.com/questions/15029276/cannot-trigger-a-click-from-xmlhttprequest">http://stackoverflow.com/questions/1502 … ttprequest</a><br />Получается, что если есть кнопка без scripting, то на нее клик послать таки можно?<br />Проверить на ahk не могу, так как, как заметил wisgest:<br /></p><div class="quotebox"><blockquote><p>Кроме того, по той ссылке немного другой XMLHttpRequest,</p></blockquote></div>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Tue, 04 Aug 2015 20:33:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96240#p96240</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96238#p96238</link>
			<description><![CDATA[<p>попробуйте так:</p><div class="codebox"><pre><code>        HttpObj1 := ComObjCreate(&quot;WinHttp.WinHttpRequest.5.1&quot;)
        _G := &quot;http://GET_URL&quot;
        HttpObj1.Open(&quot;GET&quot;,_G,true)                    ;the third parameter means, that it will be working asynchronously
        HttpObj1.Send()
        MsgBox,  % &quot;Length: [&quot; . StrLen(clp) . &quot;], Status: [&quot; . HttpObj1.Status . &quot;], GET:`n-------------------`n&quot; . _G
        Sleep, 5000
            If (HttpObj1.Status) MsgBox % HttpObj1.ResponseText</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (_gruz)]]></author>
			<pubDate>Tue, 04 Aug 2015 19:58:08 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96238#p96238</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96235#p96235</link>
			<description><![CDATA[<p>P.S.<br /></p><div class="quotebox"><cite>wisgest пишет:</cite><blockquote><p>Кроме того, по той ссылке немного другой <em>XMLHttpRequest</em>, чтобы его получить надо действовать как-то так (не проверялось)…<br />&lt;…&gt;<br />И даже если сам объект буден создан, не факт что им можно будет воспользоваться, т.к. на такой <em>XMLHttpRequest</em>, вроде бы, распространяется политика одного источника.</p></blockquote></div><p>Проверилось.<br />Первый код не работает, т.к. там не хватает <strong>new</strong>, а чтобы воспользоваться JScript&#039;овым <strong>new</strong> из AHK, всё-равно нужны костыли с помощью <em>eval()</em> или <em>window.execScript()</em>…<br />Второй, как и предполагалось, при попытке вызвать метод <em>.open()</em> приводит к ошибке:<br /></p><div class="quotebox"><blockquote><p>Error:&nbsp; 0x80070005 - Отказано в доступе. Source:		(null)<br />Description:	Отказано в доступе. <br />HelpFile:		C:\WINDOWS\system32\mshtml.hlp<br />HelpContext:	0</p></blockquote></div>]]></description>
			<author><![CDATA[null@example.com (wisgest)]]></author>
			<pubDate>Tue, 04 Aug 2015 17:30:56 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96235#p96235</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96227#p96227</link>
			<description><![CDATA[<p>Если есть метод, еще не значит, что есть события, которые можно назначить этим методом.<br />Возможно, он взят из более общего интерфейса.<br />Возможно и наиболее вероятно, чтобы заработали обработчики&nbsp; событий, узел надо вырезать из полученного XML и вставить в HTML-документ.<br />Кроме того, по той ссылке немного другой <em>XMLHttpRequest</em>, чтобы его получить надо действовать как-то так (не проверялось):<br /></p><div class="codebox"><pre><code>htmldoc := ComObjCreate(&quot;htmlfile&quot;)
req := htmldoc.Script.XMLHttpRequest() ; Script - то же, что и parentWindow
</code></pre></div><p>или<br /></p><div class="codebox"><pre><code>htmldoc := ComObjCreate(&quot;htmlfile&quot;)
htmldoc.Script.execScript(&quot;var req = new XMLHttpRequest();&quot;, &quot;JScript&quot;)
req := htmldoc.Script.req
</code></pre></div><p>Вполне возможно, что его лучше получать не через <em>htmlfile</em>, а через <em>InternetExplorer.Application</em>… И даже если сам объект буден создан, не факт что им можно будет воспользоваться, т.к. на такой <em>XMLHttpRequest</em>, вроде бы, распространяется политика одного источника.</p>]]></description>
			<author><![CDATA[null@example.com (wisgest)]]></author>
			<pubDate>Tue, 04 Aug 2015 16:02:36 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96227#p96227</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96225#p96225</link>
			<description><![CDATA[<p>Как это откуда?<br />По ссылке в первом посте присутствует метод:<br />dispatchEvent 	- Sends an event to the current element.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Tue, 04 Aug 2015 15:14:40 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96225#p96225</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96224#p96224</link>
			<description><![CDATA[<p>Имеется в виду произвольный XML, не обязательно XHTML. Откуда в нём click? onreadystatechange - для назначения функции обратного вызова при асинхронном запросе (тут не имеет значения XML или что-угодно).</p>]]></description>
			<author><![CDATA[null@example.com (shiz)]]></author>
			<pubDate>Tue, 04 Aug 2015 15:11:45 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96224#p96224</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96220#p96220</link>
			<description><![CDATA[<p>Но в этом случае DOM даёт возможность только разбора (получение аттрибутов, свойств) элементов, или же позволяет их использование, без необходимости отправки запросов. Т.е. например применили метод &quot;click&quot; на кнопке, а данная кнопка уже с помощью скриптов выполняет переход на другую страницу, или скачивание файла и.т.п. Что должно произойти по клику?</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Tue, 04 Aug 2015 12:38:15 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96220#p96220</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96218#p96218</link>
			<description><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>Кстати, в чём оновные отличия XMLHttpRequest от WinHttpRequest?</p></blockquote></div><p>Как я понимаю основное отличие проявляется в случае, если получаемый файл представляет собой синтаксически правильный XML-документ, в этом случае становится доступной его DOM без необходимости чтения его сырого кода.</p>]]></description>
			<author><![CDATA[null@example.com (shiz)]]></author>
			<pubDate>Tue, 04 Aug 2015 12:25:56 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96218#p96218</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96216#p96216</link>
			<description><![CDATA[<p>Я его из примера взял:<br /><a href="https://msdn.microsoft.com/en-us/library/ff975247">https://msdn.microsoft.com/en-us/library/ff975247</a><br /></p><div class="codebox"><pre><code>var a = document.createElement(&#039;a&#039;);
var evt = document.createEvent(&#039;MouseEvents&#039;);
evt.initEvent(&quot;click&quot;, true, true);
a.dispatchEvent(evt);</code></pre></div><p>А как тогда?<br />Так тоже не получается:<br /></p><div class="codebox"><pre><code>URL := &quot;http://help.dottoro.com/external/examples/ljwcseaq/onmousedown_4.htm&quot;
xml := ComObjCreate(&quot;Msxml2.XMLHTTP.6.0&quot;)
xml.open(&quot;GET&quot;, URL, 0)
xml.send

MsgBox, % IsObject(xml.constructor)</code></pre></div><div class="quotebox"><blockquote><p>Кстати, в чём оновные отличия XMLHttpRequest от WinHttpRequest?</p></blockquote></div><p>Как я понимаю, с помощью него можно посылать события на элементы. Только не получается пока.<br />Я им заинтересовался после поста Lexikos:<br /></p><div class="quotebox"><blockquote><p>I started looking into this because using WinHttpRequest in synchronous mode causes the script to hang until the request completes, but it turns out you can get around that by opening the request in asynchronous mode and calling WinHttpRequest.WaitForResponse(). The advantages of XMLHTTP are that the API is well known to many web developers, and the events (like onreadystatechange) are compatible with AutoHotkey.</p></blockquote></div><p><a href="http://ahkscript.org/boards/viewtopic.php?p=34247#p34247">http://ahkscript.org/boards/viewtopic.p … 247#p34247</a></p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Tue, 04 Aug 2015 10:41:32 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96216#p96216</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96215#p96215</link>
			<description><![CDATA[<p>Кстати, в чём оновные отличия XMLHttpRequest от WinHttpRequest?</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Tue, 04 Aug 2015 10:36:27 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96215#p96215</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96214#p96214</link>
			<description><![CDATA[<p>Для начала — а откуда у XMLHttpRequest-объекта взялось свойство <em>document</em>? Я такого по ссылке не обнаружил.<br /></p><div class="codebox"><pre><code>URL := &quot;http://help.dottoro.com/external/examples/ljwcseaq/onmousedown_4.htm&quot;
xml := ComObjCreate(&quot;Msxml2.XMLHTTP.6.0&quot;)
xml.open(&quot;GET&quot;, URL, 0)
xml.send

MsgBox, % IsObject(xml.document)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Tue, 04 Aug 2015 10:23:43 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96214#p96214</guid>
		</item>
		<item>
			<title><![CDATA[AHK: XMLHttpRequest object]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96210#p96210</link>
			<description><![CDATA[<p>Не понимаю как с помощью него послать клик.<br />Судя по документации у него есть метод dispatchEvent.<br /><a href="https://msdn.microsoft.com/library/ms535874">https://msdn.microsoft.com/library/ms535874</a><br />Так не получается:<br /></p><div class="codebox"><pre><code>URL := &quot;http://help.dottoro.com/external/examples/ljwcseaq/onmousedown_4.htm&quot;
xml := ComObjCreate(&quot;Msxml2.XMLHTTP.6.0&quot;)
xml.open(&quot;GET&quot;, URL, 0)
xml.send
;~ initMouseEvent(eventType, canBubble, cancelable, viewArg, detailArg, screenXArg, screenYArg, clientXArg, clientYArg, ctrlKeyArg, altKeyArg, shiftKeyArg, metaKeyArg, buttonArg, relatedTargetArg)
MouseDownEvent := xml.document.createEvent(&quot;MouseEvent&quot;)
MouseDownEvent.initMouseEvent(&quot;mousedown&quot;,true,false, _, _, _, _, _, _, _, _, _, _, _, _)

MouseUpEvent := xml.document.createEvent(&quot;MouseEvent&quot;)
MouseUpEvent.initMouseEvent(&quot;mouseup&quot;,true,false, _, _, _, _, _, _, _, _, _, _, _, _)

xml.document.querySelector(&quot;BUTTON[Id=&quot;&quot;testButton&quot;&quot;]&quot;).dispatchEvent(MouseDownEvent)
xml.document.querySelector(&quot;BUTTON[Id=&quot;&quot;testButton&quot;&quot;]&quot;).dispatchEvent(MouseUpEvent)
MsgBox, %  xml.responseText</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Tue, 04 Aug 2015 08:22:43 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96210#p96210</guid>
		</item>
	</channel>
</rss>
