On-line: гостей 1. Всего: 1 [подробнее..]
АвторСообщение
постоянный участник




Пост N: 253
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 16.03.21 21:55. Заголовок: Облачные сервисы (WebDAV, CalDAV &Co)


После некоторого разбирательства с прогой удалось организовать импорт из ICAL-файлов и экспорт в оные. Но тут шеф захотел, чтобы был прямой контакт с CalDav через интернет. Я знаю, что на питоне такое возможно. На дельфине и даже Xojo (RealBasic) тоже - через спецбиблиотеку. Но как реализовать подключение к облачному сервису в Harbour/Minigui?

Возможно ли это вообще?

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 171 , стр: 1 2 3 4 5 6 7 8 9 All [только новые]


постоянный участник




Пост N: 3633
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 21.03.21 16:39. Заголовок: Dr. Oldwarez пишет А..


Dr. Oldwarez пишет
 цитата:
А мне надо именно, что ВСЕ события получить. Дата модификации неинформативна.
Не дата модификации мне нужна, а дата и время события.
Это и есть первичный ключ в моём локальном календаре


Причем здесь, информативно\не информативно и ваш первичный ключ. Есть архитектура, устройство календаря и оно такое какое есть.
Есть правила доступа и вы их соблюдаете или нет. Как минимум, надо сделать все запросы для понимания ситуевины и от нее
переходить к вашему устройству базы, но точно не наоборот

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 265
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 21.03.21 20:57. Заголовок: Петр пишет: Да втащ..


Петр пишет:

 цитата:
Да втащите весь календарь на локальный комп (за один запрос), а потом синхронизируйте его с сервером
Пример с GET делали или нет?


Сделал
curl -o test2.txt --user USERNAME:PASSWORD -i -X GET https://webmail.kleeblatt.com/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/


И вот...
HTTP/1.1 200 OK 
Date: Sun, 21 Mar 2021 17:51:23 GMT
Server: Apache
X-Powered-By: PHP/7.3.27
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
Vary: Accept-Encoding
Set-Cookie: PHPSESSID=e5ud2bc6fab8mv59hf8hanbhd8; path=/
Set-Cookie: horde_secret_key=e5ud2bc6fab8mv59hf8hanbhd8; path=/; domain=webmail.kleeblatt.com; HttpOnly
Set-Cookie: default_horde_view=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/; domain=webmail.kleeblatt.com
X-Powered-By: PleskLin
Transfer-Encoding: chunked
Content-Type: text/html; charset=utf-8

<html>
<head>
<title>Index for calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/ - SabreDAV 1.8.12-stable</title>
<style type="text/css">
body { Font-family: arial}
h1 { font-size: 150% }
</style>
<link rel="shortcut icon" href="/rpc.php/?sabreAction=asset&assetName=favicon.ico" type="image/vnd.microsoft.icon" /></head>
<body>
<h1>Index for calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/</h1>
<table>
<tr><th width="24"></th><th>Name</th><th>Type</th><th>Size</th><th>Last modified</th></tr>
<tr><td colspan="5"><hr /></td></tr><tr>
<td><a href="/rpc.php/calendars/illya@kleeblatt.com">
<img src="/rpc.php/?sabreAction=asset&assetName=icons%2Fparent.png" width="24" alt="Parent" /></a></td>
<td><a href="/rpc.php/calendars/illya@kleeblatt.com">..</a></td>
<td>[parent]</td>
<td></td>
<td></td>
</tr><tr>
<td><a href="/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/w7klsLDepGCBYAA7Gmr4GIe.ics">
<img src="/rpc.php/?sabreAction=asset&assetName=icons%2Ffile.png" alt="" width="24" /></a></td>
<td><a href="/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/w7klsLDepGCBYAA7Gmr4GIe.ics">w7klsLDepGCBYAA7Gmr4GIe.ics</a></td>
<td>text/calendar; charset=utf-8</td>
<td>500</td>
<td>2021-03-13T16:58:11+00:00</td>
</tr><tr>
<td><a href="/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/8gpZuoZBJQDnLlr-66brhHG.ics">
<img src="/rpc.php/?sabreAction=asset&assetName=icons%2Ffile.png" alt="" width="24" /></a></td>
<td><a href="/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/8gpZuoZBJQDnLlr-66brhHG.ics">8gpZuoZBJQDnLlr-66brhHG.ics</a>
</td>
<td>text/calendar; charset=utf-8</td>


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1614
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 21.03.21 21:21. Заголовок: Dr. Oldwarez пишет: ..


Dr. Oldwarez пишет:

 цитата:
curl -o test2.txt --user USERNAME:PASSWORD -i -X GET https://webmail.kleeblatt.com/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/


И что мы пытались скачать ?!

Присобачьте к url имя календаря, например, seukIp8ajv0rOXXx8IG4Q9j.ics

... GET https://webmail.kleeblatt.com/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/seukIp8ajv0rOXXx8IG4Q9j.ics

Спасибо: 1 
ПрофильЦитата Ответить
постоянный участник




Пост N: 266
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 21.03.21 22:30. Заголовок: Петр пишет: Присоб..


Петр пишет:

 цитата:

Присобачьте к url имя календаря, например, seukIp8ajv0rOXXx8IG4Q9j.ics

... GET https://webmail.kleeblatt.com/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/seukIp8ajv0rOXXx8IG4Q9j.ics



Йееес!!!
Получилось!
 
BEGIN:VCALENDAR
VERSION:2.0
X-WR-CALNAME:Kalender von illya@kleeblatt.com
PRODID:-//The Horde Project//Horde iCalendar Library//EN
BEGIN:VEVENT
DTSTART:20210318T140000Z
DTEND:20210318T150000Z
DTSTAMP:20210321T192856Z
UID:20210315125442.qQtI4Rdk7FakWsfY8RiLVTg@webmail.kleeblatt.com
CREATED:20210315T125442Z
LAST-MODIFIED:20210315T125641Z
SUMMARY:Testing of Import
DESCRIPTION:Not so easy, but I will try to do it
LOCATION:Somewhere on the Earth
CLASS:PUBLIC
STATUS:CONFIRMED
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1616
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 22.03.21 09:28. Заголовок: Dr. Oldwarez пишет: ..


Dr. Oldwarez пишет:

 цитата:
Йееес!!!
Получилось!



Вери велл..
Результат применения PROPFIND / GET к колекции мы видели.
Сделайте еще PROPFIND для календаря

... PROPFIND https://webmail.kleeblatt.com/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/seukIp8ajv0rOXXx8IG4Q9j.ics

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 267
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 23.03.21 19:16. Заголовок: Петр пишет: Вери ве..


Петр пишет:

 цитата:
Вери велл..
Результат применения PROPFIND / GET к колекции мы видели.
Сделайте еще PROPFIND для календаря

... PROPFIND https://webmail.kleeblatt.com/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/seukIp8ajv0rOXXx8IG4Q9j.ics



 
<?xml version="1.0" encoding="utf-8"?>
<d:multistatus
xmlns:d="DAV:"
xmlns:s="http://sabredav.org/ns"
xmlns:cal="urn:ietf:params:xml:ns:caldav"
xmlns:cs="http://calendarserver.org/ns/"
xmlns:card="urn:ietf:params:xml:ns:carddav">
<d:response>
<d:href>/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/seukIp8ajv0rOXXx8IG4Q9j.ics</d:href>
<d:propstat>
<d:prop>
<d:getlastmodified>Mon, 15 Mar 2021 12:56:41 GMT</d:getlastmodified>
<d:getcontentlength>546</d:getcontentlength>
<d:resourcetype/>
<d:getetag>"fa79fe0b28dea03c0db457af39980eae"</d:getetag>
<d:getcontenttype>text/calendar; charset=utf-8</d:getcontenttype>
</d:prop>
<d:status>HTTP/1.1 200 OK</d:status>
</d:propstat>
</d:response>
</d:multistatus>


И что дальше?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1617
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 23.03.21 20:16. Заголовок: Dr. Oldwarez пишет: ..


Dr. Oldwarez пишет:

 цитата:
И что дальше?


Все. Спасибо.
Дальше сами, согласно техзадания шефа.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3638
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 23.03.21 20:21. Заголовок: Dr. Oldwarez пишет И..


Dr. Oldwarez пишет
 цитата:
И что дальше?


Теперь, как минимум, знаете устройство календаря (по запросам), т.е.
1. Список календарей (пост 259)
2. Оглавление календаря (список событий, предыдущий ваш пост 267). Идентификатор события <d:getetag>"fa79fe0b28dea03c0db457af39980eae"</d:getetag>
3. Содержимое календаря (GET запрос), правда вы дали его в усеченном виде, т.к. нет идентификатора события
События оглавления содержат дату <d:getlastmodified>Mon, 15 Mar 2021 12:56:41 GMT</d:getlastmodified> и
Содержимое события содержит дату LAST-MODIFIED:20210315T125641Z
Т.е. получая Оглавление календаря, а не все содержимое, можно знать менялось событие в календаре на сервере, сравнивая со значением в dbf
и брать с сервера только измененные данные (содержимое).

Спасибо: 1 
ПрофильЦитата Ответить
постоянный участник




Пост N: 268
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 23.03.21 21:45. Заголовок: SergKis пишет: Соде..


SergKis пишет:

 цитата:
Содержимое события содержит дату LAST-MODIFIED:20210315T125641Z
Т.е. получая Оглавление календаря, а не все содержимое, можно знать менялось событие в календаре на сервере, сравнивая со значением в dbf
и брать с сервера только измененные данные (содержимое).


О, точно, как же я сразу до этого не додумался? Надо всё фильтровать по дате последнего обновления, которая также должна храниться в INI
Тогда фильтруются только те ICSы, которые не были актуализированы в прошлый раз. И ещё маленький вопрос напоследок. Как с помощью CURL GET сделать так, чтобы НЕСКОЛЬКО событий вывелось в один файл

А то у меня так (Strings - список названий ics, TEMPDIR - директория временных файлов, создаваемых в процессе подключения к календарю):

 
...
FOR k:=1 TO LEN(aStrings)
cCURL2:='curl -o '+cTempDIR+IIF(RIGHT(cTempLW,1)="\",'','\')+'temp_'+STRZERO(k,4)+'.txt --user '+cCALLOgin+':'+cCALPWD+' -i -X GET '+cCalName+;
IIF(RIGHT(cCalName,1)='/','','/')+aStrings[k]
RUN(cCurl2)
NEXT k
...


То есть, каждый ICS на одно событие генерит свой собственный файл. Нельзя ли так, чтобы несколько событий отправлялись в один файл? (Настроить вывод на дозапись вместо открытия нового файла)

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3639
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 23.03.21 21:57. Заголовок: Dr. Oldwarez пишет Н..


Dr. Oldwarez пишет
 цитата:
Нельзя ли так, чтобы несколько событий отправлялись в один файл?


Зачем ?
Есть a := Directory(<маска>)
и собирайте, если надо или проще по одному элементу отрабатывать массив a

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3640
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 23.03.21 22:27. Заголовок: PS А может так ? FO..


PS
А может так ?
 
FOR k:=1 TO LEN(aStrings)
cOut := cTempDIR+IIF(RIGHT(cTempLW,1)="\",'','\')+'temp_'+STRZERO(k,4)+'.txt'
fErase(cOut)
cCURL2:='curl -o '+cOut+' --user '+cCALLOgin+':'+cCALPWD+' -i -X GET '+cCalName+;
IIF(RIGHT(cCalName,1)='/','','/')+aStrings[k]
RUN(cCurl2)
IF file(cOut)
// обработка
ELSE
? k, "Error", cOut
ENDIF
NEXT k


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 269
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 25.03.21 13:54. Заголовок: SergKis пишет: ICS..


SergKis пишет:

 цитата:
ICS = ARRAY[6]
1 {"/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/w7klsLDepGCBYAA7Gmr4GIe.ics", "Sat, 13 Mar 2021 16:58:11 GMT", "ics 1"}
2 {"/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/8gpZuoZBJQDnLlr-66brhHG.ics", "Thu, 04 Mar 2021 16:51:14 GMT", "ics 2"}
3 {"/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/VM3wwLrVEm3Zwn-UkKAzXra.ics", "Thu, 04 Mar 2021 16:51:33 GMT", "ics 3"}
4 {"/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/e5aab12a-1a2a-4309-96d4-cccb1b67d9ba.ics", "Mon, 08 Mar 2021 06:59:00 GMT", "ics 4"}
5 {"/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/seukIp8ajv0rOXXx8IG4Q9j.ics", "Mon, 15 Mar 2021 12:56:41 GMT", "ics 5"}
6 {"/rpc.php/calendars/illya@kleeblatt.com/calendar~GhGVum1xWexaffEfhiVkNN7/83sEK6nFBn4-TQ1XcZoPvWz.ics", "Mon, 15 Mar 2021 12:52:23 GMT", "ics 6"}



Отлично! У меня получилось.
Теперь вот вопрос по формату времени. Мой шеф проживает в зоне CET (Гринвич+1). Я - в зоне EET. И хотелось бы привести это всё к одному формату, принятому в ICS:
YYYYMMDDTHHMMSSZ
И тогда уже можно сделать выбор по дате - только тех, кто позже даты последней автосинхронизации, заносимой в регистр автоматически при нажатии на кнопку "Синхронизация"

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3641
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.03.21 15:35. Заголовок: Dr. Oldwarez пишет И..


Dr. Oldwarez пишет
 цитата:
И хотелось бы привести это всё к одному формату, принятому в ICS:


Для этого, вроде, все есть
 
c := DtoS(Date())
m := {}
FOR i := 1 TO 12 ; AAdd(m, left(cMonth(StoD( left(c,4)+strzero(i,2)+"01" )), 3))
NEXT
a := hb_ATokens("Mon, 15 Mar 2021 12:56:41 GMT"," ")
cDay := a[2]
cMes := a]3]
cGod := a[4]
cTim := a[5]
cMes := StrZero(AScan(m, cMes), 2)
cTim := StrTran(cTim, ":", "")
cDat := cGod+cMes+cDay+cTim


Спасибо: 1 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1618
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 25.03.21 17:16. Заголовок: Dr. Oldwarez пишет: ..


Dr. Oldwarez пишет:

 цитата:
Отлично! У меня получилось.


В цикле выполнить вызов curl?
Поздравляю.

Спасибо: 1 
ПрофильЦитата Ответить
постоянный участник




Пост N: 270
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 25.03.21 20:59. Заголовок: Петр пишет: В цикле..


Петр пишет:

 цитата:
В цикле выполнить вызов curl?
Поздравляю.



Этак вот
 
PROCEDURE SyncDlg()
LOCAL cXML:=cTempDIR+IIF(RIGHT(cTempLW,1)="\",'','\')+'listall_ics.xml'
LOCAL cRun:='curl -k -o '+cXML+' --user '+cCALLOgin+':'+cCALPWD+' -X PROPFIND "'+cCALName+'"'
LOCAL cBuf:="",aBuf:={},nI:=1,aStrings:={},aICS:={},j:=1,cCURL2:="",aHeaders:={"CALENDAR","CHANGE DATE","NUMBER"},aLen:={700,150,80}
LOCAL nN:=1,cK:="",cI:=""
LOCAL aDimLen := {280,80,50,80,50,200,350}
LOCAL aDimHeaders:={"Subject","Start Date", "Start Time","End Date","End Time","Location","Description"},aCalStr:={},aDim:={}
LOCAL cLocation:="",cDescription:="",cSubject:="",dStartDate:=CTOD(""),cStartTime:="00:00",dEndDate:=CTOD(""),cEndTime:="00:00",;
cStartDateTime:="",cEndDateTime:=""
RUN (cRun)
cBuf := hb_memoread(cXml)

IF CRLF $ cBuf
cBuf := StrTran(cBuf, CRLF, "")
ENDIF

aBuf := hb_ATokens(cBuf, "<d:response><d:href>")

nN := 0
FOR nI := 1 TO Len(aBuf)
cI := aBuf[nI]
nK := AT("</", cI)
cK := trim(left(cI, nK-1))
IF right(cK, 4) == ".ics"
nN += 1
AAdd(aIcs, { cK, "", "ics "+hb_ntos(nN) })
ENDIF

NEXT


aBuf := hb_ATokens(cBuf, "<d:propstat><d:prop><d:getlastmodified>")


nN := 0
FOR nI := 1 TO Len(aBuf)
cI := aBuf[nI]
cK := ""
IF ! "<?xml " $ cI
nN += 1
nK := AT("</", cI)
cK := left(cI, nK-1)
aIcs[nN][2] := cK
ENDIF

NEXT

FOR i:=1 TO LEN(aICS)
//IF aICS[ i ][2]>
AADD(aStrings,SUBSTR(aICS[ i ][1],RAT("/",aICS[ i ][1])+1))
//ENDIF
NEXT i
FOR k:=1 TO LEN(aStrings)
cOut := cTempLW+IIF(RIGHT(cTempLW,1)="\",'','\')+'temp_'+STRZERO(k,4)+'.txt'
fErase(cOut)
cCURL2:='curl -o '+cOut+' --user '+cCALLOgin+':'+cCALPWD+' -i -X GET '+cCalName+;
IIF(RIGHT(cCalName,1)='/','','/')+aStrings[k]
RUN(cCurl2)
IF FILE(cOut)
aCalStr:=hb_ATokens(MEMOREAD(cOut),CRLF)
FOR nBuf:=1 TO LEN(aCalStr)
IF aCalStr[nBuf]="DTSTART"
cDateTime:=SUBSTR(aCalStr[nBuf],AT(":",aCalStr[nBuf])+1)
dStartDate:=STOD(LEFT(cDateTime,8))
cStartTime:=SUBSTR(cDateTime,10,2)+":"+SUBSTR(cDateTime,12,2)
ENDIF
IF aCalStr[nBuf]="DTEND"
cEndDateTime:=SUBSTR(aCalStr[nBuf],AT(":",aCalStr[nBuf])+1)
dEndDate:=STOD(LEFT(cEndDateTime,8))
cEndTime:=SUBSTR(cEndDateTime,10,2)+":"+SUBSTR(cEndDateTime,12,2)
ENDIF
IF aCalStr[nBuf]="SUMMARY"
cSubject:=SUBSTR(aCalStr[nBuf],AT(":",aCalStr[nBuf])+1)
ENDIF
IF aCalStr[nBuf]="LOCATION"
cLocation:=SUBSTR(aCalStr[nBuf],AT(":",aCalStr[nBuf])+1)
ENDIF
IF aCalStr[nBuf]="DESCRIPTION"
cDescription:=SUBSTR(aCalStr[nBuf],AT(":",aCalStr[nBuf])+1)
ENDIF
NEXT nBuf
AADD(aDim,{cSubject,dStartDate,cStartTime,dEndDate,cEndTime,cLocation,cDescription})
// Obrabotka
ENDIF
NEXT k

DEFINE WINDOW wndSync;
AT 50,0;
WIDTH 1020 HEIGHT 670;
CHILD;
TITLE "Calendar synchronization"
IF LEN(aDim)>0
DEFINE TBROWSE brwImport;
AT 10,10;
WIDTH 950 HEIGHT 350;
GRID
brwImport:=SetArrayTo("brwImport","wndSync",aDim)
END TBROWSE
ENDIF
END WINDOW
ACTIVATE WINDOW wndSync


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 271
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 25.03.21 21:00. Заголовок: Петр пишет: К тому ..


Петр пишет:

 цитата:
К тому же инсталлятор весом меньше 1 Га в наше время моветон



Вот только моему шефу этого не говорите. Для него это как красная тряпка для быка

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3645
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 26.03.21 07:51. Заголовок: Dr. Oldwarez Поправ..


Dr. Oldwarez
Поправьте в посте 270 [ i ] без пробелов (это служебный тэг), на [ i ] с пробелами, искажение текста не будет

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3646
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 26.03.21 07:56. Заголовок: Dr. Oldwarez пишет В..


Dr. Oldwarez пишет
 цитата:
Вот только моему шефу этого не говорите. Для него это как красная тряпка для быка



 цитата:
В Windows 10 build 17063 и более поздних версиях теперь включен Curl, так что вы можете запускать его непосредственно из Cmd.exe или PowerShell.exe.



Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 7289
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 26.03.21 10:10. Заголовок: SergKis пишет: Попр..


SergKis пишет:

 цитата:
Поправьте в посте 270 [ i ] без пробелов (это служебный тэг), на [ i ] с пробелами, искажение текста не будет


я поправил

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 272
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 26.03.21 13:44. Заголовок: SergKis пишет:  ци..


SergKis пишет:

 цитата:

 цитата:
В Windows 10 build 17063 и более поздних версиях теперь включен Curl, так что вы можете запускать его непосредственно из Cmd.exe или PowerShell.exe.


И это радует. А то придётся уже через libcurl продираться.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 171 , стр: 1 2 3 4 5 6 7 8 9 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 240
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет