Powershell для получения ссылок с Box - PullRequest
0 голосов
/ 11 декабря 2018

У нас есть бокс-аккаунт, который содержит огромное количество файлов.Мне нужно получить ссылки на каждый элемент в данной папке - или, по крайней мере, на текущую страницу.

Однако '(Invoke-WebRequest –Uri' http://web/address/place’).Links дает мне толькоссылки на главную страницу box.com - не адрес в определенном месте, на которое я ссылаюсь - к которому он, вероятно, не может получить доступ, потому что ему требуется логин. Я предполагаю, что он вводит этот адрес, но без входа в систему простоbox.com

1 Ответ

0 голосов
/ 12 декабря 2018

Что вы подразумеваете под ссылкой?Общий доступ, например https://app.box.com/s/ijvchvz0ptdxp....?

Если это так, я думаю, вам сначала нужно настроить его для каждого файла или папки.Второе - вам нужно создать учетную запись разработчика и использовать их API для подобных вещей.

Но есть простой способ взаимодействия с учетной записью Box, по крайней мере, для вывода списка / загрузки / загрузки файлов, потому что вы можете получить к нему доступ.через FTP / FTPS.Существует множество примеров того, как FTP-файлы (незащищенные) с PowerShell.Ниже приведен пример того, как сделать это с помощью FTPS (безопасный):

$url = "ftp://ftp.box.com"
$user = "youremail@yahoo.com"
$password = "yourpassword"

$client = [System.Net.FtpWebRequest]::Create($url)
$client.UsePassive = $true
$client.EnableSsl = $true
$client.Credentials = new-object System.Net.NetworkCredential($user, $password)
$client.Method = [System.Net.WebRequestMethods+Ftp]::ListDirectoryDetails

$res = $client.GetResponse()
$stream = $res.GetResponseStream()
$reader = [System.IO.StreamReader]::new($stream)
$reader.ReadToEnd()

В этом примере перечислены файлы в корневом каталоге.Таким образом, вы также можете загружать / скачивать файлы

...