Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 8 общая

Ошибка при вызове метода контекста (send)

Ошибка при вызове метода контекста (send)
Я
   falselight
 
08.09.16 - 12:00
Подскажите пожалуйста как избавиться от этой ошибки:

    //

    УРЛ = "ссылка" + СокрЛП(ЭлементыФормы.url.Значение);
    ХМЛХТТП = ПолучитьCOMОбъект("", "Microsoft.XMLHTTP");
    ХМЛХТТП.Open("GET", УРЛ, Ложь);
    ХМЛХТТП.Send(Null);  
    Пока ХМЛХТТП.Status <> 200 Цикл
        Состояние("Ждем...");
    КонецЦикла;
    //ТегНачалоРезультата     = "<parents>";

    //ТегКонецРезультата         = "</parents>";

    //ТегНачалоРезультата2     = "<id>";

    //ТегКонецРезультата2     = "</id>";

    //ТегНачалоПоля     = "<" +     ТегПоляНаСайте + ">";

    //ТегКонецПоля     = "</" +     ТегПоляНаСайте + ">";

    ТекстОтвета = ХМЛХТТП.ResponseText;
    //




{Форма.Форма.Форма(7)}: Ошибка при вызове метода контекста (send)
    ХМЛХТТП.Send(Null);  
по причине:
Произошла исключительная ситуация (msxml3.dll): Указанный протокол неизвестен.
 
 
   Serginio1
 
1 - 08.09.16 - 12:04
Аналог null в 1С это неопределено
   Cyberhawk
 
2 - 08.09.16 - 12:05
(1) Аналог, да не аналог и не везде :)
   Serginio1
 
3 - 08.09.16 - 12:06
(2) В ВК кстати Null
   falselight
 
4 - 08.09.16 - 12:13
работает на других функциях с null
я решил проверить обработкой, выдает ошибку
на метод send, что нужно исправить?
   sapphire
 
5 - 08.09.16 - 12:16
(0)
https://msdn.microsoft.com/ru-ru/library/ms536736.aspx

send method

Sends an HTTP request to the server and receives a response.
Syntax
XMLHttpRequest.send(varBody);
Parameters
varBody [in, optional]
Type: any
Any that specifies the body of the message being sent with the request.
Value    Meaning
ArrayBuffer
A binary data. See FileReader.readAsArrayBuffer.
blob
A Blob (binary data object).
Document
A documentnode.
ArrayBufferView
A typed array view of an ArrayBuffer.
string
A DOMString.
FormData
A FormData object

Как видим, NULL там нет :)
   falselight
 
6 - 08.09.16 - 12:17
(1) если ставить неопределено за место null таже ошибка
   sapphire
 
7 - 08.09.16 - 12:17
+(5) Но, поскольку varBody optional, то,
ХМЛХТТП.Send();
   falselight
 
8 - 08.09.16 - 12:17
(0) а что там должно быть?
   sapphire
 
9 - 08.09.16 - 12:18
(6) Не ставьте вообще ничего
   falselight
 
10 - 08.09.16 - 12:18
(9) попробую
 
 Рекламное место пустует
   falselight
 
11 - 08.09.16 - 12:21
(9) ругается
{Форма.Форма.Форма(8)}: Ошибка при вызове метода контекста (send)
    ХМЛХТТП.Send();  
по причине:
Произошла исключительная ситуация (msxml3.dll): Указанный протокол неизвестен.
   falselight
 
12 - 08.09.16 - 12:21
что то не так!!!
   Serginio1
 
13 - 08.09.16 - 12:22
(12) Пустую строку
   sapphire
 
14 - 08.09.16 - 12:22
(11) Так это не потому.
Вы в УРЛ пихаете что?
УРЛ = "ссылка" + СокрЛП(ЭлементыФормы.url.Значение);
   Serginio1
 
15 - 08.09.16 - 12:22
   sapphire
 
16 - 08.09.16 - 12:23
+(14) Любой браузер ругнется на такой урл
   falselight
 
17 - 08.09.16 - 12:27
(16) то что я ложу в УРЛ пробовал в браузере он возвращает номер, то есть работает
   falselight
 
18 - 08.09.16 - 12:32
брал с отладчика с табло, вставлял в строку браузера
   sapphire
 
19 - 08.09.16 - 12:34
(17) НЕ ВЕРЮ (с)
   sapphire
 
20 - 08.09.16 - 12:35
(18) значение УРЛ в студию.
   Serginio1
 
21 - 08.09.16 - 12:35
(18) А там по аналогии с 1С
xhr.open('POST', '/server', true);

а в Send ресурсы
   falselight
 
22 - 08.09.16 - 12:37
   Serginio1
 
23 - 08.09.16 - 12:38
   Serginio1
 
24 - 08.09.16 - 12:39
А попробуй
ХМЛХТТП.Open("GET", "http://www.reestr35.ru/admin/offline_func.php";, Ложь);
    ХМЛХТТП.Send("?act=add_redirect&url=http://ya.ru";);
   sapphire
 
25 - 08.09.16 - 12:43
(22)

УРЛ = "http://www.reestr35.ru/admin/offline_func.php?act=add_redirect&url=http://ya.ru";;
ХМЛХТТП = ПолучитьCOMОбъект("", "Microsoft.XMLHTTP");
ХМЛХТТП.Open("GET", УРЛ, Ложь);
ХМЛХТТП.Send(Null);  
Пока ХМЛХТТП.Status <> 200 Цикл
     Состояние("Ждем...");
КонецЦикла;
ТекстОтвета = ХМЛХТТП.ResponseText;

У меня работает.
   falselight
 
26 - 08.09.16 - 12:46
(25) почему у меня может быть ошибка?
   falselight
 
27 - 08.09.16 - 12:54
(26) не подскажете? если все одинаково, то дело в сервере?
   Serginio1
 
28 - 08.09.16 - 12:57
   falselight
 
29 - 08.09.16 - 12:58
(28) попробовал на своем компе, тоже самое, ошибка
   Serginio1
 
30 - 08.09.16 - 12:59
   falselight
 
31 - 08.09.16 - 12:59
(28) все же не понимаю как мне устранить эту ошибку? (
   falselight
 
32 - 08.09.16 - 13:00
(30) (24) в смысле?
   falselight
 
33 - 08.09.16 - 13:01
(30) но вы говорите же что у вас выполняется все
 
 
   Serginio1
 
34 - 08.09.16 - 13:07
врап=новый COMОбъект("NetObjectToIDispatch45");

    HttpClient=Врап.ПолучитьТипИзСборки("System.Net.Http.HttpClient","System.Net.Http.dll");
  
  
  handler = врап.СоздатьОбъект("System.Net.Http.HttpClientHandler");
  DecompressionMethods= Врап.ПолучитьТип("System.Net.DecompressionMethods");
  handler.AutomaticDecompression=Врап.OR(DecompressionMethods.GZip,DecompressionMethods.Deflate) ;
  
  Клиент=Врап.СоздатьОбъект(HttpClient,handler);
  УРЛ = "http://www.reestr35.ru/admin/offline_func.php?act=add_redirect&url=http://ya.ru";;
  Стр=Клиент.GetStringAsync(УРЛ).Result;
  Сообщить(Стр);

//Клиент.Dispose();
  Врап.ЗакрытьРесурс(Клиент);

Выдает

Your IP (хх.ххх.х.ххх) is not allowed.
   falselight
 
35 - 08.09.16 - 13:09
(34) да если пробовать как в 24, тоже
   Serginio1
 
36 - 08.09.16 - 13:12
(33) Это не я а 25
   Serginio1
 
37 - 08.09.16 - 13:13
(32) Попробуй 15+30
   falselight
 
38 - 08.09.16 - 14:14
(36) узнал что такое бывает на сервере иногда
то есть в иной период возможно сработает, как в (0)
   Serginio1
 
39 - 08.09.16 - 14:22
(38) Побробуй 37 для успокоения души
   Serginio1
 
40 - 08.09.16 - 14:23
38 при этом из браузера читает?
   falselight
 
41 - 08.09.16 - 14:30
(39) пока меня выкинуло с сервера и не пускает (((( ожидаю когда наладится если

(24) вот это сработало у меня на компе, выдав результат Your IP (хх.ххх.х.ххх) is not allowed, так как там можно только с сервера, я хотел проверить это на сервере и меня выбросило
то есть при (24) ошибки той нет, и по коду идет дальше

(40) (0) + ссылка из (22) в браузере возвращает число на пустой странице, которое мне и нужно считать
   Serginio1
 
42 - 08.09.16 - 14:39
(41) Значит у тебя проблема с библиотеками на сервере. Небось 64 разрядны. А почему HTTPСоединеие не используешь?
Почему 37 не хочешь попробовать?
   eklmn
 
43 - 08.09.16 - 14:57
прокси все ломает...
   sapphire
 
44 - 08.09.16 - 14:59
(42) Нет не с библиотеками.
   Serginio1
 
45 - 08.09.16 - 15:01
(44) Возможно. Я таким анахронизмом давно не занимаюсь.
   sapphire
 
46 - 08.09.16 - 15:02
(41) У меня тоже именно это (Your IP (хх.ххх.х.ххх) is not allowed) и выдало.
О чем это говорит, что разрешен вход либо под определенным агентом с определенной подсети, иначе браузер не выдавал бы
числа  <<ссылка из (22) в браузере возвращает число на пустой странице, которое мне и нужно считать>>.
   falselight
 
47 - 08.09.16 - 15:53
(42) на сервере 64х разрядная система
(46) да работать это будет только на сервере
   falselight
 
48 - 08.09.16 - 15:54
(42) (37) там много написано, изучать неделю только нужно, мне дали пример кода и что делать объяснили, но вот из за ошибки на send ничего не работает
   sapphire
 
49 - 08.09.16 - 15:54
(47) неа, иначе как ты видишь ссылка из (22) в браузере возвращает число на пустой странице, которое мне и нужно считать.
 
 Рекламное место пустует
   falselight
 
50 - 08.09.16 - 15:55
(49) я вижу это в браузере на сервере, там только работает
   falselight
 
51 - 08.09.16 - 15:57
но вот из 1с ломается на методе send, пока ни разу не сработало

то что в (24) возвратило <?xml version="1.0" encoding="UTF-8"?> то есть это не подойдет наверное, так как это не то что нужно
   falselight
 
52 - 08.09.16 - 16:00
{Форма.Форма.Форма(7)}: Ошибка при вызове метода контекста (send)
    ХМЛХТТП.Send(Null);  
по причине:
Произошла исключительная ситуация (msxml3.dll): Указанный протокол неизвестен.

||

остается
   Serginio1
 
53 - 08.09.16 - 16:18
(48) Что в 34 изучать?
Здесь лежит DLL и инструкция как зарегистрировать
http://files.rsdn.org/19608/%d0%a4%d0%b0%d0%b9%d0%bb%d1%8bNetObjectToIDispatch.zip

Кроме того про регистрацию можно посмотреть здесь
Использование классов .Net в 1С для новичков
   Serginio1
 
54 - 08.09.16 - 16:20
Рядом с NetObjetToIDispatch45.dll лежит RegAsm.bat
его нужно запустить от администратора. Там делов меньше минуты
   falselight
 
55 - 08.09.16 - 16:56
(54) ну я не администратор на сервере, мне сказали что метод сенд иногда не работает, иногда работает, я не пойму этого всего пока
   falselight
 
56 - 08.09.16 - 16:57
(54) я не в теме этого всего, с этим всем нужно разбираться


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует