>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >Как передать отображаемое на странице изображение удаленному серверу? http://forum.mozilla-russia.org/viewtopic.php?id=64420 |
WinterSilence > 01-08-2014 14:41:22 |
Пишу плагин который заточен под определенный сайт, который периодически просит ввести капчу. Плагин должен передать эту капчу удаленному серверу (моему) и вводить полученный от сервера ответ. Плагин используется для того чтобы замаскировать запросы к удаленному серверу - владельцам сайта будет сложнее отследить такое решение. Все более-менее понятно кроме того каким образом передать капчу на мой сервер? |
WinterSilence > 01-08-2014 15:28:39 |
okkamas_knife пишет
спасибо, а можно ссылку? https://developer.mozilla.org/ru/docs/%D0%9E%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_canvas речь об этом? |
WinterSilence > 01-08-2014 17:13:08 |
okkamas_knife пишет
скриншот для данной задачи не подходит, второй пример так и не смог найти(( я саму последовательность действий не понимаю - для чего нам нужна канва в данном случае и каким образом из объекта изображения получить контекст, пересмотрел статей 10, но везде только создание изображения и элементарные манипуляции с ними(( |
WinterSilence > 01-08-2014 21:08:16 |
okkamas_knife пишет
а получить контекст картинки без извращений со скринами никак нельзя? |
WinterSilence > 04-08-2014 01:17:44 |
Написал такой вариант Выделить код Код:<!DOCTYPE HTML> <html> <head> <title>canvas</title> <meta charset="utf-8"> </head> <body> <img src="http://forum.mozilla-russia.org/style/img/Moz-infinity/pun_Moz-infinity_forum_logo.png" id="captcha"> <br> <canvas width="500" height="500" id="canvas"></canvas> <script> var canvas = document.getElementById('canvas'), captcha = document.getElementById('captcha'), ctx = canvas.getContext('2d'), img = new Image(); img.onload = function() { // ctx.clearRect(0, 0, img.width, img.height); ctx.drawImage(img, 0, 0); // ctx.save(); console.log(canvas.toDataURL('image/png')); } img.src = captcha.src; </script> </body> </html> Но возникает ошибка "SecurityError: The operation is insecure." каким образом её можно обойти? |
WinterSilence > 04-08-2014 06:48:46 |
okkamas_knife пишет
почему данная проблема произошла мне понятно и переводом фразы с английского вы явно не поможете. мануалы смотрел, но большинство из них морально устарели - примеры не работают даже "as is". |
WinterSilence > 04-08-2014 08:42:33 |
okkamas_knife пишет
если б я понимал что читать, то я бы попусту вас не дергал. единственное что нашел по ff и canvas это https://developer.mozilla.org/en-US/docs/Web/HTML/Canvas но к решения проблемы меня это не приблизило. я не понимаю фразы "используем канвас не из страницы а из расширения", что под этим подразумевается? какое-то спец api для canvas в ff? если да, то где про это почитать? |
WinterSilence > 04-08-2014 19:04:11 |
Поймите, что это Вам все понятно и просто потому, что ты в этом давно варитесь, а как могу я что-то найти, если я даже не могу четко сформулировать что именно искать? Когда начинал работу над этим плагином, то я даже не подозревал, что для реализации такого сравнительно простого действия потребуется столько усилий. По поводу того откуда запускать, то я пишу и тестирую на основе оф.мануала https://developer.mozilla.org/en-US/Add-ons/SDK/Tutorials/Installation Спасибо за пример и помощь, буду разбираться. И еще небольшой вопрос из любопытства - а если с помощью плагина сохранить картинку локально, то потом получиться передать её как описано в моем варианте? |
Infocatcher > 04-08-2014 21:54:10 |
WinterSilence пишет
|