purebasic.info

PureBasic forum
Текущее время: Пн май 27, 2019 10:29 am

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Вт дек 26, 2017 9:35 am 
Не в сети
доцент
Аватар пользователя

Зарегистрирован: Вт апр 16, 2013 2:00 pm
Сообщений: 53
Откуда: Волгодонск
Благодарил (а): 3 раз.
Поблагодарили: 3 раз.
Пункты репутации: 5
Если вдруг кому-то будет интересно.
В системе прописан прокси с авторизацией. Если я через какие-то программы ещё попадаю в интернет, вводя логин и пароль, то система моя - нет.
Поэтому и была такая ерунда - всё вроде доступно, пингуется, а выходит ошибка проверки сертификата в списке отозванных,
а через средства PureBasic для скачивания очевидно необходимо, чтобы и системные службы могли нормально работать.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Вс янв 07, 2018 2:27 pm 
Не в сети
профессор

Зарегистрирован: Пт фев 20, 2009 12:57 pm
Сообщений: 1752
Откуда: Алматы
Благодарил (а): 17 раз.
Поблагодарили: 49 раз.
Пункты репутации: 5
а как быть в тяжелом случае? :) https://www.indiegala.com/ тут причем не ясно. ведь надо по идее дописать название файла https://www.indiegala.com/index.php например, или index.htm, или index.html - все три варианта 404. как в подобном случае выкрутится? без точного указания видимо не работает. уже и юзер агент подменял. и через #PB_HTTP_Asynchronous пробывал и с #PB_HTTP_Asynchronous. 5.60 версия.

Код:
1
2
3
4
5
6
7
8
9
10
  InitNetwork()
 
  *Buffer = ReceiveHTTPMemory("https://www.indiegala.com", 0, "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36")
  If *Buffer
    Size = MemorySize(*Buffer)
    Debug "Content: " + PeekS(*Buffer, Size, #PB_UTF8|#PB_ByteLength)
    FreeMemory(*Buffer)
  Else
    Debug "Failed"
  EndIf



Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Вс янв 07, 2018 3:25 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Чт июн 25, 2009 1:02 pm
Сообщений: 2317
Откуда: Russia — Belarus
Благодарил (а): 7 раз.
Поблагодарили: 73 раз.
Пункты репутации: 11
Incapsula стоит:
https://en.wikipedia.org/wiki/Incapsula
Которая защищает от роботов и всего такого.

_________________
EnableExplicit User


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Вт апр 03, 2018 7:48 pm 
Не в сети
профессор

Зарегистрирован: Сб фев 06, 2016 6:18 pm
Сообщений: 298
Благодарил (а): 14 раз.
Поблагодарили: 33 раз.
Пункты репутации: 2
Сразу признаюсь Help читал и не раз. Но как работать с HTTPProxy так и не понял.
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
InitNetwork()
;http://spys.one/proxys/RU/
;11 79.175.15.38:3128   HTTP    HIA     0.488   RU Казань 38.15.175.79kazan.ptl.ru (Quantum CJSC)
HTTPProxy("http://79.175.15.38")
 
*Buffer = ReceiveHTTPMemory("https://whoer.net/ru")
If *Buffer
  Size = MemorySize(*Buffer)
  buff.s = PeekS(*Buffer, Size, #PB_UTF8|#PB_ByteLength)
  FreeMemory(*Buffer)
Else
  Debug "Failed"
EndIf
 
If buff
  start.l = FindString(buff, "Скопировать в буфер обмена") + 28
  stop.l = FindString(buff, "<", start)
  len.b = stop - start
  Debug Mid(buff, start, len)
EndIf


Должно ли в данном случае вернуть адрес прокси "79.175.15.38" ? Всегда получаю Failed, если прописать в браузере, то работает (с браузера, прокси живой).


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Вт апр 03, 2018 9:17 pm 
Не в сети
док
Аватар пользователя

Зарегистрирован: Сб мар 28, 2015 11:06 pm
Сообщений: 175
Откуда: Україна
Благодарил (а): 12 раз.
Поблагодарили: 16 раз.
Пункты репутации: 9
1. Чёт не нравится этой проксе как пурик авторизируется и отвечает ему 407 Unauthorized
2. порт тож надо указывать, на HTTPProxy("http://159.65.110.167:3128") - работает


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Вт апр 03, 2018 9:40 pm 
Не в сети
профессор

Зарегистрирован: Сб фев 06, 2016 6:18 pm
Сообщений: 298
Благодарил (а): 14 раз.
Поблагодарили: 33 раз.
Пункты репутации: 2
LinXP, спасибо.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Пт окт 05, 2018 10:37 pm 
Не в сети
доцент
Аватар пользователя

Зарегистрирован: Вт апр 16, 2013 2:00 pm
Сообщений: 53
Откуда: Волгодонск
Благодарил (а): 3 раз.
Поблагодарили: 3 раз.
Пункты репутации: 5
Новая серия. Другой нужный мне сайт переехал на https.

Там нюанс, первая страница генерит уникальную ссылку на скрипт, который возвращает JSON.
И чтобы получить его нужно обязательно указать referer.

Штатный ReceiveHTTPMemory не имеет такой возможности (зато есть ненужный user-agent), поэтому я перебрался на SendNetworkData(), ReceiveNetworkData() и так далее, там можно вручную сформировать GET запрос c любыми полями.

И вот, сюрприз, теперь у нас https и, как я понял из реплик на инофорумах, мой текущий вариант не канает, потому что still not implemented.

Альтернативу предлагают wininet или libcurl.

Я что-то кинулся за wininet, но там непонятные мне ошибки лезут и осложнено всё тем, что ряд файлов надо скачать в рамках одного соединения, чтобы не генерились новые уникальные ссылки... Сложно всё.
Может кто-то посоветует другие варианты? Libcurl ещё не пробовал, но подозреваю там будет не менее тяжко.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Пт окт 05, 2018 11:10 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11461
Благодарил (а): 4 раз.
Поблагодарили: 464 раз.
https://www.purebasic.fr/english/viewto ... 12&t=42064

В 5.70 появились функции HTTPRequest() и HTTPRequestMemory(). https://www.purebasic.fr/english/viewto ... 65#p527365
В них есть возможность задать заголовок.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Сб окт 06, 2018 3:26 am 
Не в сети
док
Аватар пользователя

Зарегистрирован: Сб мар 28, 2015 11:06 pm
Сообщений: 175
Откуда: Україна
Благодарил (а): 12 раз.
Поблагодарили: 16 раз.
Пункты репутации: 9
doremi, 5.70 не скоро зарелизится, пока использую такое... вроде прокси тут не работает, не помню..
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
#INTERNET_DEFAULT_HTTP_PORT  = 80
#INTERNET_DEFAULT_HTTPS_PORT = 443
 
#INTERNET_OPEN_TYPE_DIRECT = 1
#INTERNET_OPEN_TYPE_PROXY  = 3
 
#INTERNET_SERVICE_HTTP = 3
 
#INTERNET_FLAG_PRAGMA_NOCACHE =           $00000100
#INTERNET_FLAG_IGNORE_CERT_CN_INVALID =   $00001000
#INTERNET_FLAG_IGNORE_CERT_DATE_INVALID = $00002000
#INTERNET_FLAG_NO_COOKIES =               $00080000
#INTERNET_FLAG_NO_AUTO_REDIRECT =         $00200000
#INTERNET_FLAG_SECURE =                   $00800000
#INTERNET_FLAG_DONT_CACHE =               $04000000
 
#HTTP_ADDREQ_FLAG_ADD =     $20000000
#HTTP_ADDREQ_FLAG_REPLACE = $80000000
 
#ERROR_INTERNET_INVALID_CA = 12045
 
#INTERNET_OPTION_SECURITY_FLAGS = 31
 
#SECURITY_FLAG_IGNORE_UNKNOWN_CA = $00000100
 
Structure Pure_HTTP
  fullurl.s               ; "http://translate.baidu.com/transcontent?monLang=en"
  post_data.s             ; "ie=utf-8&source=txt&query=Hello%20World&from=en&to=jp"  (only for POST)
  post_data_charset.l     ; #PB_Unicode
  post_data_content_type.s; "Content-Type: text/html; charset=utf-8"
  cookie.s                ; "caltat=604255e95d374037942e666b1f717286"
  user_agent.s            ; "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)"
  referer.s               ; "http://translate.baidu.com"
  proxy.s                 ;
  timeout.l               ; 5000  (Default 1000)
  redirect.i              ; #True (Default #False)
  UserName.s              ; UserName (Default NULL)
  Password.s              ; Password (Default NULL)
EndStructure
 
Procedure.s StringToUTF(String.s)
  #AutoLength=-1
  Protected buffer.s
  buffer=Space(StringByteLength(String,#PB_UTF8))
  PokeS(@buffer,String,#AutoLength,#PB_UTF8)
 
  ProcedureReturn buffer
EndProcedure
 
Procedure.s do_request(*Pure_HTTP.Pure_HTTP)
  Protected.l flags, bytes_read, dwFlags, dwBuffLen
  Protected.i is_secure, open_handle, port, connect_handle, request_handle, send_handle, Ok, access_type, LastError
  Protected.s host, page, verb, headers, buffer, result, Size.l, sBuffer.s, Ret.l
 
  If *Pure_HTTP\timeout     = 0  : *Pure_HTTP\timeout       = 1000  : EndIf
  If *Pure_HTTP\user_agent  = "" : *Pure_HTTP\user_agent    = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" : EndIf
  If *Pure_HTTP\post_data_content_type  = "" : *Pure_HTTP\post_data_content_type    = "Content-Type: text/html; charset=utf-8" : EndIf
  If *Pure_HTTP\proxy       = "" : access_type              =  #INTERNET_OPEN_TYPE_DIRECT : Else : access_type = #INTERNET_OPEN_TYPE_PROXY : EndIf
 
  host = GetURLPart(*Pure_HTTP\fullurl, #PB_URL_Site)
  page = GetURLPart(*Pure_HTTP\fullurl, #PB_URL_Path)
 
  If GetURLPart(*Pure_HTTP\fullurl, #PB_URL_Parameters) = "" : Debug "---" : Else : page + "?" +GetURLPart(*Pure_HTTP\fullurl, #PB_URL_Parameters): EndIf
  If GetURLPart(*Pure_HTTP\fullurl, #PB_URL_Protocol) = "http"  : is_secure.i=#False : EndIf
  If GetURLPart(*Pure_HTTP\fullurl, #PB_URL_Protocol) = "https" : is_secure.i=#True  : EndIf
 
  open_handle = InternetOpen_(*Pure_HTTP\user_agent, access_type, "", "", 0)
 
  InternetSetOption_(open_handle, 2, *Pure_HTTP\timeout, 4)
 
  flags = #INTERNET_FLAG_PRAGMA_NOCACHE
  flags | #INTERNET_FLAG_NO_COOKIES
  flags | #INTERNET_FLAG_DONT_CACHE
 
  If is_secure
    port  = #INTERNET_DEFAULT_HTTPS_PORT
   
    flags | #INTERNET_FLAG_SECURE
    flags | #INTERNET_FLAG_IGNORE_CERT_CN_INVALID
    flags | #INTERNET_FLAG_IGNORE_CERT_DATE_INVALID
  Else
    port  = #INTERNET_DEFAULT_HTTP_PORT
  EndIf
  Debug "Connect to: " + host
  connect_handle = InternetConnect_(open_handle, host, port, *Pure_HTTP\UserName, *Pure_HTTP\Password, #INTERNET_SERVICE_HTTP, 0, 0)
 
 
  If Not *Pure_HTTP\redirect : flags | #INTERNET_FLAG_NO_AUTO_REDIRECT : EndIf
  If *Pure_HTTP\post_data = "" : verb = "GET" : Else : verb = "POST" : EndIf
  If page = "" : page = "/" : EndIf
  request_handle = HttpOpenRequest_(connect_handle, verb, page, "", *Pure_HTTP\referer, #Null, flags, 0)
  If verb = "POST"
    headers = *Pure_HTTP\post_data_content_type + #CRLF$
    headers +  "Accept-Charset: utf-8" + #CRLF$
    HttpAddRequestHeaders_(request_handle, headers, Len(headers), #HTTP_ADDREQ_FLAG_ADD | #HTTP_ADDREQ_FLAG_REPLACE)
  EndIf
 
  If *Pure_HTTP\cookie <> ""
    headers = "Cookie: "+ *Pure_HTTP\cookie + #CRLF$
    HttpAddRequestHeaders_(request_handle, headers, Len(headers), #HTTP_ADDREQ_FLAG_ADD | #HTTP_ADDREQ_FLAG_REPLACE)
  EndIf
 
  Ok = 0
  Repeat
    send_handle = HttpSendRequest_(request_handle, #Null, 0, StringToUTF(*Pure_HTTP\post_data), StringByteLength(*Pure_HTTP\post_data, #PB_UTF8))
   
    If send_handle = 0
      LastError = GetLastError_()
     
      Debug "Error " + Str(LastError)
     
      If LastError = #ERROR_INTERNET_INVALID_CA
       
        dwBuffLen = SizeOf(dwFlags)
       
        InternetQueryOption_(request_handle, #INTERNET_OPTION_SECURITY_FLAGS, @dwFlags, @dwBuffLen)
       
        dwFlags | #SECURITY_FLAG_IGNORE_UNKNOWN_CA
        InternetSetOption_(request_handle, #INTERNET_OPTION_SECURITY_FLAGS, @dwFlags, SizeOf(dwFlags))
        Ok + 1
      Else
        Ok = 2
      EndIf
    Else
      Ok = 2
    EndIf
  Until Ok = 2
 
  Repeat
    ;выясним сколько нужно памяти для порции закачки
    InternetQueryDataAvailable_(request_handle,@Size,0,0)
    If Size=0:Break: EndIf ; Пока порции выдают будем качать!
    sBuffer = Space(Size)
    ; считываем считываем очередную порцию
    InternetReadFile_(request_handle, @sBuffer, Size, @Ret)
    result+ PeekS(@sBuffer, -1, #PB_UTF8)
    Delay(1)
  ForEver
 
  InternetCloseHandle_(open_handle)
  InternetCloseHandle_(connect_handle)
  InternetCloseHandle_(request_handle)
  InternetCloseHandle_(send_handle)
 
  ProcedureReturn result
EndProcedure
 
; -------------------- Example ------------------------
example.Pure_HTTP
example\fullurl = "https://whoer.net/ru"
example\referer = "http://purebasic.info"
 
Request.s = do_request(example)
 
start.l = FindString(Request, "Скопировать в буфер обмена") + 28
stop.l = FindString(Request, "<", start)
len.b = stop - start
Debug Mid(Request, start, len)



Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Сб окт 06, 2018 8:44 pm 
Не в сети
доцент
Аватар пользователя

Зарегистрирован: Вт апр 16, 2013 2:00 pm
Сообщений: 53
Откуда: Волгодонск
Благодарил (а): 3 раз.
Поблагодарили: 3 раз.
Пункты репутации: 5
Пётр писал(а):
https://www.purebasic.fr/english/viewtopic.php?f=12&t=42064

В 5.70 появились функции HTTPRequest() и HTTPRequestMemory(). https://www.purebasic.fr/english/viewto ... 65#p527365
В них есть возможность задать заголовок.


Всё отлично с 5.70 получилось, спасибо, а я не следил за бетами.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Ср окт 10, 2018 11:46 am 
Не в сети
профессор

Зарегистрирован: Пт фев 20, 2009 12:57 pm
Сообщений: 1752
Откуда: Алматы
Благодарил (а): 17 раз.
Поблагодарили: 49 раз.
Пункты репутации: 5
оба моих бесплатных хостинга как сговорились закрываются. точнее один уже, а второй вот вот. и я чо думаю - а мне список ссылок надо в программе получать с этого хостинга - может через почту делать? типа программа заходит на почту, получает этот список и показывает пользователю. почта с 2004 года на мылру вон... и до сих пор как часы. другое дело что алгоритм авторизации может изменится. скажут безопасности, начальника, не хватает. и там помница менялось один раз, что стало сложнее. но в целом думаю идея хорошая :) правда еще не известно как антивири отреагируют.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Тоже про HTTP
СообщениеДобавлено: Пт янв 18, 2019 3:00 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Пт янв 27, 2012 7:12 pm
Сообщений: 884
Откуда: Кустанай
Благодарил (а): 27 раз.
Поблагодарили: 13 раз.
Пункты репутации: 7
Прошу извинить, не хочу создавать новую тему.

Ниже приведен код процедуры, просто закачка страницы и нечего более. Но она то нормально работает, без ошибок, то постоянно выдаёт ошибку чтения по адресу, при этом ошибка в разных строках, пару раз вообще возникла в самом верху программы на строке
EnableExplicit
InitNetwork()


Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
Procedure.s DownloadHtmlPage(*Url)
  ; ##############################################################################################################
  If *Url=0:ProcedureReturn "":EndIf
  ; ##############################################################################################################
  Protected Url.s = PeekS(*Url)
  Protected *Mem
  Protected i.l
  Protected Dounload.l
  Protected Progress.l
  Protected ControlProgress.l
  Protected StartDounloadTime.l
  Protected Result.l
  Protected Size.l
  Protected Html.s
  ; ##############################################################################################################
  For i=1 To 5
    Dounload          = ReceiveHTTPMemory(Url,#PB_HTTP_NoRedirect|#PB_HTTP_Asynchronous); тут бывает ошибка
    StartDounloadTime = Date()
    If Dounload
      Repeat
        Progress = HTTPProgress(Dounload)
        If Date()-StartDounloadTime>=30 And ControlProgress=Progress
          Result = #False
          Break
        ElseIf ControlProgress<>Progress
          ControlProgress = Progress
        EndIf
        Select Progress
          Case #PB_Http_Success
            *Mem   = FinishHTTP(Dounload)
            Result = #True
            Break
          Case #PB_Http_Failed
            Result = #False
            Break
          Case #PB_Http_Aborted
            Result = #False
            Break
        EndSelect
        Delay(25)
      ForEver
    EndIf
    If Result = #True Or i>=5
      Break
    EndIf
    Delay(50)
  Next i
  If *Mem<=0
    ProcedureReturn ""
  EndIf
 
  Size = MemorySize(*Mem)
  If Size<=0
    FreeMemory(*Mem)
    ProcedureReturn ""
  EndIf
 
  Html = PeekS(*Mem, Size, #PB_UTF8)
  FreeMemory(*Mem)
  ; ##############################################################################################################
  ProcedureReturn Html ; тут бывает ошибка
EndProcedure



Не как не могу понять, почему возникает такая ерунда
WIN7, PureBasic 5.60 (Windows - x86)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Пт янв 18, 2019 5:32 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Чт июн 25, 2009 1:02 pm
Сообщений: 2317
Откуда: Russia — Belarus
Благодарил (а): 7 раз.
Поблагодарили: 73 раз.
Пункты репутации: 11
А зачем ты с памятью (URL) извращаешься? Принимай URL как простую строку.
И не забудь:
Изображение
Изображение

Вот мой старый код (хотя он писался когда еще ReceiveHTTPMemory() не было, так что едва-ли поможет):
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
EnableExplicit
#server_ip = "ya.ru"
#server_host = "www.ya.ru"
#server_port = 80
#server_protocol = "HTTP/1.0"
#delay_part = 25
InitNetwork()
Procedure get_server_data(time_for_update.i, buffer_size.i)
  Protected connection_id.i = OpenNetworkConnection(#server_ip, #server_port, #PB_Network_TCP)
  If connection_id <> 0
    Protected string_to_send.s = "GET / " + #server_protocol + #CRLF$
    string_to_send + "Host: " + #server_host + #CRLF$
    string_to_send + "Connection: Close" + #CRLF$ + #CRLF$
   
    SendNetworkString(connection_id , string_to_send)
   
    Protected time_current.i = ElapsedMilliseconds()
    Protected time_limit.i = time_current + time_for_update
   
    Protected final_of_transmission.i = 0
   
    Define content.s
   
    Repeat      
      Select NetworkClientEvent(connection_id)
        Case #PB_NetworkEvent_Data
          Repeat
            Protected *memory_buffer = AllocateMemory(buffer_size)
            Protected received_size.i = ReceiveNetworkData(connection_id, *memory_buffer, buffer_size)
            Debug received_size
            If received_size = -1 Or received_size = 0
              FreeMemory(*memory_buffer)
              final_of_transmission.i = 1
              Break
            Else
              Protected received_size_global.i
              received_size_global + received_size
              Protected *memory_global = ReAllocateMemory(*memory_global, received_size_global)
              CopyMemory(*memory_buffer, *memory_global + (received_size_global - received_size), received_size)
              FreeMemory(*memory_buffer)
            EndIf
          ForEver
      EndSelect
     
      If final_of_transmission > 0
        CloseNetworkConnection(connection_id)
          content = PeekS(*memory_global, received_size_global)
          FreeMemory(*memory_global)
          Debug "Done!"
          Debug content
        Break
      Else
        ;timeout check call
        time_current = ElapsedMilliseconds()
        If time_current > time_limit
          ;status is timeout (server not responge)
          CloseNetworkConnection(connection_id)
          Debug "TimeOut!"
          Break
        Else
          Delay(#delay_part)
        EndIf
      EndIf
    ForEver
  Else
    Debug "Can not connect!"
  EndIf  
EndProcedure
get_server_data(10000, 4096)


_________________
EnableExplicit User


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: https file download
СообщениеДобавлено: Пт янв 18, 2019 10:19 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Пт янв 27, 2012 7:12 pm
Сообщений: 884
Откуда: Кустанай
Благодарил (а): 27 раз.
Поблагодарили: 13 раз.
Пункты репутации: 7
qpAHToMAS писал(а):
А зачем ты с памятью (URL) извращаешься? Принимай URL как простую строку.
И не забудь:

Код предполагался под многопоточность, что то изменил, а про урл не критично.
В том то и дело, что поддержка многопочности включена.

Переделал код, убрал асинхронность и вроде глюк исчез, скорее всего в параметре #PB_HTTP_Asynchronous кроется проблемма.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB