Π Π°Π·Π½ΠΎΠ΅

Api диска яндСкс: Новый REST API ЯндСкс.Диска ΠΈ Полигон. А Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Ρ‡Π΅ΠΌ Диску Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ API ΠΈ ΠΊΠ°ΠΊ ΠΌΡ‹ Π΅Π³ΠΎ Π΄Π΅Π»Π°Π»ΠΈ

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Новый REST API ЯндСкс.Диска ΠΈ Полигон. А Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Ρ‡Π΅ΠΌ Диску Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ API ΠΈ ΠΊΠ°ΠΊ ΠΌΡ‹ Π΅Π³ΠΎ Π΄Π΅Π»Π°Π»ΠΈ

МногиС Π·Π½Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Ρƒ Диска ΡƒΠΆΠ΅ достаточно Π΄Π°Π²Π½ΠΎ Π΅ΡΡ‚ΡŒ API Π½Π° WebDAV. Он достаточно ΡƒΠ·ΠΊΠΎ Π·Π°Ρ‚ΠΎΡ‡Π΅Π½ ΠΏΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ структурой, Π° Ρƒ Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… часто Π±Ρ‹Π²Π°ΡŽΡ‚ Π½Π΅ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ‹Π΅, Π½ΠΎ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ приятныС нСдостатки. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ WebDAV ΠΌΡ‹ запускаСм REST API, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ всё Ρ‚ΠΎ ΠΆΠ΅ ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ большС.

НапримСр, ΠΏΡ€ΠΈ использовании Π½ΠΎΠ²ΠΎΠ³ΠΎ API всС прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ просто Π½ΡƒΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ свои Ρ„Π°ΠΉΠ»Ρ‹ Π² ДискС, смогут ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ доступ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ своСй ΠΏΠ°ΠΏΠΊΠ΅, Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ Π² ДискС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² ΠΏΠ°ΠΏΠΊΠ΅ Β«ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΒ». Π’ WebDAV API сСрвису для этого придётся ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° запись/Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ всСго Диска, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ.

Π’ этом постС я Ρ…ΠΎΡ‡Ρƒ Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π΅ ΠΎ структурС ΠΈΠ»ΠΈ ΠΎΠ± опСрациях, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΌΠ΅Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ наш API β€” Ρ‚Π°ΠΌ всё довольно ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ β€” Π° сразу ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρƒ ΠΊ интСрСсным Π²Π΅Ρ‰Π°ΠΌ: Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Hypermedia ΠΈ Machine-readable and Self-describing API, ΠΈ ΠΊΠ°ΠΊ ΠΌΡ‹ всС это Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ.

Hypermedia API

ΠœΡ‹ снабдили наш API гипСрссылками, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²ΡΠ·Ρ‹Π²Π°ΡŽΡ‚ Π΅Π³ΠΎ рСсурсы ΠΌΠ΅ΠΆΠ΄Ρƒ собой. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΠ· Π΄Ρ‘Ρ€Π³Π°Π½ΡŒΡ Π·Π°Ρ…Π°Ρ€Π΄ΠΊΠΎΠ΄Π΅Π½Π½Ρ‹Ρ… URL Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΠΎ ссылкам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСдоставляСт API Π² Ρ‚Π΅Π»Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². ΠœΡ‹ взяли Π·Π° основу стандарт HAL, ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ простых ΠΈ Π·Ρ€Π΅Π»Ρ‹Ρ… стандартов Π² этой области. Π’ настоящСС врСмя HAL ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Ρ€Π°Ρ„Ρ‚ RFC-стандарта, ΠΈ Π΅Π³ΠΎ ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΡ‚ΡŒ Π² API Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ.

Благодаря ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ HAL ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, Π·Π½Π°Π΅Ρ‚ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΈΠ»ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π² соотвСтствии с RFC 6570 URL ΠΈ HTTP-ΠΌΠ΅Ρ‚ΠΎΠ΄ дСйствия. Π’ свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ клиСнтских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ мСньшС ΠΊΠΎΠ΄Π°, тратя Π½Π° это мСньшС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π° этот ΠΊΠΎΠ΄ становится ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ Π»Π΅Π³Ρ‡Π΅ для восприятия. НапримСр, ΠΊΠΎΠ΄, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠΉ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΏΠ°ΠΏΠΊΠ°ΠΌΠΈ Π² ДискС, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ гипСрссылки, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

Π‘ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ тСкст

# -*- coding: utf-8 -*-
import urllib
import httplib
import json
import uritemplate

headers = {'Authorization': '<OAuth Ρ‚ΠΎΠΊΠ΅Π½>'}
connection = httplib. HTTPSConnection('cloud-api.yandex.net')
resource_url = '/v1/disk/resources'

def request(method, url, query=None):
    if query:
        qs = urllib.urlencode(query)
        url = '%s?%s' % (url, qs)
    connection.request(method, url, headers=headers)
    resp = connection.getresponse()
    content = resp.read()
    obj = json.loads(content) if content else None
    status = resp.status
    if status == 201:
        # ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ созданный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚
        obj = request(obj['method'], obj['href'])
    return obj

if __name__ == '__main__':
    # создаём ΠΏΠ°ΠΏΠΊΡƒ
    path = '/foo'
    folder = request('PUT', resource_url, {'path': path})

    # ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅ΠΌ ΠΏΠ°ΠΏΠΊΡƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Ρ‘Π½Π½ΡƒΡŽ
    new_path = '/bar'
    folder = request('POST', '%s/move' % resource_url, {'path': new_path, 'from': path})

    # ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠ°ΠΏΠΊΡƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π½ΠΎΠ²ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ
    copy_path = '/foobar'
    folder_copy = request('POST', '%s/copy' % resource_url, {'path': copy_path, 'from': new_path})

    # удаляСм ΠΏΠ°ΠΏΠΊΠΈ
    request('DELETE', resource_url, {'path': new_path})
    request('DELETE', resource_url, {'path': copy_path})

ΠŸΡ€ΠΈ использовании гипСрссылок ΠΏΡ€ΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ URL ΠΈ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒΡΡ ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… запроса ΠΈ Π±Π΅Π· Ρ‚ΠΎΠ³ΠΎ извСстных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ выполняСтся опСрация:Π‘ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ тСкст

# -*- coding: utf-8 -*-
import urllib
import httplib
import json
import uritemplate

headers = {'Authorization': '<OAuth Ρ‚ΠΎΠΊΠ΅Π½>', 'Accept': 'application/hal+json'}
connection = httplib. HTTPSConnection('cloud-api.yandex.net')
resource_url = '/v1/disk/resources?path={path}'

def request(method, url, params=None):
    url = uritemplate.expand(url, params or {})
    connection.request(method, url, headers=headers)
    resp = connection.getresponse()
    content = resp.read()
    obj = json.loads(content) if content else None
    status = resp.status
    if status == 201:
        # ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ созданный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚
        status, obj = request(obj['method'], obj['href'])
    return status, obj

def do(resource, action, params=None):
    link = resource['_links'][action]
    _, obj = request(link['method'], link['href'], params)
    return obj

if __name__ == '__main__':
    # создаём ΠΏΠ°ΠΏΠΊΡƒ
    _, folder = request('PUT', uritemplate.expand(resource_url, {'path': '/foo'}))

    # ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅ΠΌ ΠΏΠ°ΠΏΠΊΡƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Ρ‘Π½Π½ΡƒΡŽ
    folder = do(folder, 'move', {'path': '/bar'})

    # ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠ°ΠΏΠΊΡƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π½ΠΎΠ²ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ
    folder_copy = do(folder, 'copy', {'path': '/foobar'})

    # удаляСм ΠΏΠ°ΠΏΠΊΠΈ
    do(folder, 'delete')
    do(folder_copy, 'delete')
Machine-readable & Self-describing API

ΠšΡ€ΠΎΠΌΠ΅ Π³ΠΈΠΏΠ΅Ρ€ΠΌΠ΅Π΄ΠΈΠ°, ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ наш API самоописываСмым ΠΈ ΠΌΠ°ΡˆΠΈΠ½ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ. Π’ процСссС ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΌΡ‹ ΠΈΠ·ΡƒΡ‡ΠΈΠ»ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ стандарты описания REST API, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ RAML, WADL, JSON Schema+JSON HyperSchema, IO Docs, Apiary Blueprints, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ ΠΏΠ°Π» Π½Π° Swagger. Одно ΠΈΠ· основных прСимущСств Swagger Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ развиваСтся ΠΊΠ°ΠΊ стандарт (API ЯндСкс.Диска ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π²Π΅Ρ€ΡΠΈΡŽ спСцификации 1.2, Π½ΠΎ сСйчас ΡƒΠΆΠ΅ вСдётся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° вСрсии стандарта 2.0). Он описываСт REST API с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ JSON, достаточно прост для понимания ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅ΠΏΠ»ΠΎΡ…ΡƒΡŽ экосистСму инструмСнтов для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с описаниями API.

Swagger-докумСнтация ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС доступныС Π² API рСсурсы ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΡ… Π²Ρ‹Π·ΠΎΠ²Π°. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° рСсурса Π΅ΡΡ‚ΡŒ описаниС ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… ΠΈΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ структуры Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

Π­Ρ‚ΠΎ описаниС ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Π² качСствС ΠΎΡ‚ΠΏΡ€Π°Π²Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ для ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Ρ… Swagger-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ², Ρ‚Π°ΠΊ ΠΈ для Π°Π²Ρ‚ΠΎΠ³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ части ΠΊΠΎΠ΄Π° Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… SDK для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… языков.

Полигон

Благодаря Π½Π°Π»ΠΈΡ‡ΠΈΡŽ Swagger-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ API ΠΌΡ‹ запустили ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Полигон, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Π°Ρ‘Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ, Π½Π΅ написав Π½ΠΈ строчки ΠΊΠΎΠ΄Π°, ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π±ΠΎΠ΅Π²Ρ‹Π΅ запросы Π² API. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Полигон ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° для любого API, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ Swagger-описаниС. Наш Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π ΠΎΠΌΠ° АкинфССв ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ» скринкаст, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ рассказал Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ возмоТностях Полигона.

Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΈ Ρ€Π°Π·Π½Ρ‹Ρ…!

БСйчас Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ API Диска Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ достаточно для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ„ΠΎΡ‚ΠΎΡ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ², Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² слайд-ΡˆΠΎΡƒ, ΠΌΠ΅Π΄ΠΈΠ°-ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Ρ‚.Π΄.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ нашСго API ΠΌΠΎΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ прилоТСния ΠΌΠ΅ΠΆΠ΄Ρƒ дСвайсами ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ прогрСсс Π² ΠΈΠ³Ρ€Π°Ρ… ΠΈΠ»ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ·Π±Ρ€Π°Π½Π½ΠΎΠ΅ ΠΈ Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, созданныС Π² вашСм ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

ΠœΡ‹ ΡΡ‚Π°Ρ€Π°Π»ΠΈΡΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ API Диска Ρ‚Π°ΠΊΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π°ΠΌ Π±Ρ‹Π»ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΈ приятно ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, мСньшС ΡˆΡ‚ΡƒΠ΄ΠΈΡ€ΡƒΡ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΈ большС ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ осваивая Π΅Π³ΠΎ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… слов ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Полигоном ΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π½ΠΎΠ²Ρ‹ΠΌ REST API ЯндСкс.Диска.

Новый REST API ЯндСкс. Диска ΠΈ Полигон. А Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Ρ‡Π΅ΠΌ Диску Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ API ΠΈ ΠΊΠ°ΠΊ ΠΌΡ‹ Π΅Π³ΠΎ Π΄Π΅Π»Π°Π»ΠΈ

МногиС Π·Π½Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Ρƒ Диска ΡƒΠΆΠ΅ достаточно Π΄Π°Π²Π½ΠΎ Π΅ΡΡ‚ΡŒ API Π½Π° WebDAV. Он достаточно ΡƒΠ·ΠΊΠΎ Π·Π°Ρ‚ΠΎΡ‡Π΅Π½ ΠΏΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ структурой, Π° Ρƒ Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… часто Π±Ρ‹Π²Π°ΡŽΡ‚ Π½Π΅ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ‹Π΅, Π½ΠΎ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ приятныС нСдостатки. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ WebDAV ΠΌΡ‹ запускаСм REST API, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ всё Ρ‚ΠΎ ΠΆΠ΅ ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ большС.

НапримСр, ΠΏΡ€ΠΈ использовании Π½ΠΎΠ²ΠΎΠ³ΠΎ API всС прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ просто Π½ΡƒΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ свои Ρ„Π°ΠΉΠ»Ρ‹ Π² ДискС, смогут ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ доступ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ своСй ΠΏΠ°ΠΏΠΊΠ΅, Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ Π² ДискС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² ΠΏΠ°ΠΏΠΊΠ΅ Β«ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΒ». Π’ WebDAV API сСрвису для этого придётся ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° запись/Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ всСго Диска, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ.

Π’ этом постС я Ρ…ΠΎΡ‡Ρƒ Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π΅ ΠΎ структурС ΠΈΠ»ΠΈ ΠΎΠ± опСрациях, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΌΠ΅Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ наш API β€” Ρ‚Π°ΠΌ всё довольно ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ β€” Π° сразу ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρƒ ΠΊ интСрСсным Π²Π΅Ρ‰Π°ΠΌ: Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Hypermedia ΠΈ Machine-readable and Self-describing API, ΠΈ ΠΊΠ°ΠΊ ΠΌΡ‹ всС это Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ.

Hypermedia API

ΠœΡ‹ снабдили наш API гипСрссылками, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²ΡΠ·Ρ‹Π²Π°ΡŽΡ‚ Π΅Π³ΠΎ рСсурсы ΠΌΠ΅ΠΆΠ΄Ρƒ собой. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΠ· Π΄Ρ‘Ρ€Π³Π°Π½ΡŒΡ Π·Π°Ρ…Π°Ρ€Π΄ΠΊΠΎΠ΄Π΅Π½Π½Ρ‹Ρ… URL Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΠΎ ссылкам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСдоставляСт API Π² Ρ‚Π΅Π»Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². ΠœΡ‹ взяли Π·Π° основу стандарт

HAL

, ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ простых ΠΈ Π·Ρ€Π΅Π»Ρ‹Ρ… стандартов Π² этой области. Π’ настоящСС врСмя HAL ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Ρ€Π°Ρ„Ρ‚ RFC-стандарта, ΠΈ Π΅Π³ΠΎ ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΡ‚ΡŒ Π² API Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ.

Благодаря ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ HAL ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, Π·Π½Π°Π΅Ρ‚ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΈΠ»ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π² соотвСтствии с RFC 6570 URL ΠΈ HTTP-ΠΌΠ΅Ρ‚ΠΎΠ΄ дСйствия. Π’ свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ клиСнтских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ мСньшС ΠΊΠΎΠ΄Π°, тратя Π½Π° это мСньшС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π° этот ΠΊΠΎΠ΄ становится ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ Π»Π΅Π³Ρ‡Π΅ для восприятия. НапримСр, ΠΊΠΎΠ΄, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠΉ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΏΠ°ΠΏΠΊΠ°ΠΌΠΈ Π² ДискС, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ гипСрссылки, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

Π‘ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ тСкст

# -*- coding: utf-8 -*-
import urllib
import httplib
import json
import uritemplate

headers = {'Authorization': '<OAuth Ρ‚ΠΎΠΊΠ΅Π½>'}
connection = httplib. HTTPSConnection('cloud-api.yandex.net')
resource_url = '/v1/disk/resources'

def request(method, url, query=None):
    if query:
        qs = urllib.urlencode(query)
        url = '%s?%s' % (url, qs)
    connection.request(method, url, headers=headers)
    resp = connection.getresponse()
    content = resp.read()
    obj = json.loads(content) if content else None
    status = resp.status
    if status == 201:
        # ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ созданный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚
        obj = request(obj['method'], obj['href'])
    return obj

if __name__ == '__main__':
    # создаём ΠΏΠ°ΠΏΠΊΡƒ
    path = '/foo'
    folder = request('PUT', resource_url, {'path': path})

    # ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅ΠΌ ΠΏΠ°ΠΏΠΊΡƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Ρ‘Π½Π½ΡƒΡŽ
    new_path = '/bar'
    folder = request('POST', '%s/move' % resource_url, {'path': new_path, 'from': path})

    # ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠ°ΠΏΠΊΡƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π½ΠΎΠ²ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ
    copy_path = '/foobar'
    folder_copy = request('POST', '%s/copy' % resource_url, {'path': copy_path, 'from': new_path})

    # удаляСм ΠΏΠ°ΠΏΠΊΠΈ
    request('DELETE', resource_url, {'path': new_path})
    request('DELETE', resource_url, {'path': copy_path})

ΠŸΡ€ΠΈ использовании гипСрссылок ΠΏΡ€ΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ URL ΠΈ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒΡΡ ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… запроса ΠΈ Π±Π΅Π· Ρ‚ΠΎΠ³ΠΎ извСстных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ выполняСтся опСрация:

Π‘ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ тСкст

# -*- coding: utf-8 -*-
import urllib
import httplib
import json
import uritemplate

headers = {'Authorization': '<OAuth Ρ‚ΠΎΠΊΠ΅Π½>', 'Accept': 'application/hal+json'}
connection = httplib. HTTPSConnection('cloud-api.yandex.net')
resource_url = '/v1/disk/resources?path={path}'

def request(method, url, params=None):
    url = uritemplate.expand(url, params or {})
    connection.request(method, url, headers=headers)
    resp = connection.getresponse()
    content = resp.read()
    obj = json.loads(content) if content else None
    status = resp.status
    if status == 201:
        # ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ созданный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚
        status, obj = request(obj['method'], obj['href'])
    return status, obj

def do(resource, action, params=None):
    link = resource['_links'][action]
    _, obj = request(link['method'], link['href'], params)
    return obj

if __name__ == '__main__':
    # создаём ΠΏΠ°ΠΏΠΊΡƒ
    _, folder = request('PUT', uritemplate.expand(resource_url, {'path': '/foo'}))

    # ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅ΠΌ ΠΏΠ°ΠΏΠΊΡƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Ρ‘Π½Π½ΡƒΡŽ
    folder = do(folder, 'move', {'path': '/bar'})

    # ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠ°ΠΏΠΊΡƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π½ΠΎΠ²ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ
    folder_copy = do(folder, 'copy', {'path': '/foobar'})

    # удаляСм ΠΏΠ°ΠΏΠΊΠΈ
    do(folder, 'delete')
    do(folder_copy, 'delete')
Machine-readable & Self-describing API

ΠšΡ€ΠΎΠΌΠ΅ Π³ΠΈΠΏΠ΅Ρ€ΠΌΠ΅Π΄ΠΈΠ°, ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ наш API самоописываСмым ΠΈ ΠΌΠ°ΡˆΠΈΠ½ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ. Π’ процСссС ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΌΡ‹ ΠΈΠ·ΡƒΡ‡ΠΈΠ»ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ стандарты описания REST API, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ RAML, WADL, JSON Schema+JSON HyperSchema, IO Docs, Apiary Blueprints, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ ΠΏΠ°Π» Π½Π° Swagger. Одно ΠΈΠ· основных прСимущСств Swagger Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ развиваСтся ΠΊΠ°ΠΊ стандарт (API ЯндСкс.Диска ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π²Π΅Ρ€ΡΠΈΡŽ спСцификации 1.2, Π½ΠΎ сСйчас ΡƒΠΆΠ΅ вСдётся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° вСрсии стандарта 2.0). Он описываСт REST API с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ JSON, достаточно прост для понимания ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅ΠΏΠ»ΠΎΡ…ΡƒΡŽ экосистСму инструмСнтов для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с описаниями API.

Swagger-докумСнтация ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС доступныС Π² API рСсурсы ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΡ… Π²Ρ‹Π·ΠΎΠ²Π°. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° рСсурса Π΅ΡΡ‚ΡŒ описаниС ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… ΠΈΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ структуры Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

Π­Ρ‚ΠΎ описаниС ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Π² качСствС ΠΎΡ‚ΠΏΡ€Π°Π²Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ для ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Ρ… Swagger-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ², Ρ‚Π°ΠΊ ΠΈ для Π°Π²Ρ‚ΠΎΠ³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ части ΠΊΠΎΠ΄Π° Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… SDK для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… языков.

Полигон

Благодаря Π½Π°Π»ΠΈΡ‡ΠΈΡŽ Swagger-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ API ΠΌΡ‹ запустили ΠΏΡ€ΠΎΠ΅ΠΊΡ‚

Полигон

, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Π°Ρ‘Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ, Π½Π΅ написав Π½ΠΈ строчки ΠΊΠΎΠ΄Π°, ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π±ΠΎΠ΅Π²Ρ‹Π΅ запросы Π² API. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Полигон ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° для любого API, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ Swagger-описаниС. Наш Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π ΠΎΠΌΠ° АкинфССв ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ»

скринкаст

, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ рассказал Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ возмоТностях Полигона.

Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΈ Ρ€Π°Π·Π½Ρ‹Ρ…!

БСйчас Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ API Диска Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ достаточно для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ„ΠΎΡ‚ΠΎΡ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ², Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² слайд-ΡˆΠΎΡƒ, ΠΌΠ΅Π΄ΠΈΠ°-ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Ρ‚.Π΄.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ нашСго API ΠΌΠΎΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ прилоТСния ΠΌΠ΅ΠΆΠ΄Ρƒ дСвайсами ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ прогрСсс Π² ΠΈΠ³Ρ€Π°Ρ… ΠΈΠ»ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ·Π±Ρ€Π°Π½Π½ΠΎΠ΅ ΠΈ Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, созданныС Π² вашСм ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

ΠœΡ‹ ΡΡ‚Π°Ρ€Π°Π»ΠΈΡΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ API Диска Ρ‚Π°ΠΊΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π°ΠΌ Π±Ρ‹Π»ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΈ приятно ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, мСньшС ΡˆΡ‚ΡƒΠ΄ΠΈΡ€ΡƒΡ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΈ большС ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ осваивая Π΅Π³ΠΎ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… слов ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Полигоном ΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π½ΠΎΠ²Ρ‹ΠΌ REST API ЯндСкс.Диска.

Python API для ЯндСкс. Диск

Π”Π΅Π»ΠΎ Π±Ρ‹Π»ΠΎ Π²Π΅Ρ‡Π΅Ρ€ΠΎΠΌ, Π΄Π΅Π»Π°Ρ‚ΡŒ Π±Ρ‹Π»ΠΎ Π½Π΅Ρ‡Π΅Π³ΠΎ, Π²ΠΎΡ‚ ΠΈ Ρ€Π΅ΡˆΠΈΠ» я Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΠ±Ρ‘Ρ€Ρ‚ΠΊΡƒ для ЯндСкс Диска Π½Π° python, Π΄Π°Π±Ρ‹ ΠΏΠΎΡ‚ΠΎΠΌ ΠΏΡ€ΠΈΠΊΡ€ΡƒΡ‚ΠΈΡ‚ΡŒ скрипты Π±Π΅ΠΊΠ°ΠΏΠ° для своих VPS. Π“ΠΎΡ‚ΠΎΠ²ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° github ΠΈΠ»ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· pip: pip install YaDiskClient. ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ полагаСтся, посмотрСл Ρ‡Ρ‚ΠΎ ΠΆΠ΅ ΡƒΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ.
Π•ΡΡ‚ΡŒ ΠΎΠ΄Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π½Π° PHP, которая удовлСтворяСт всСм ΠΌΠΎΠΈΠΌ трСбованиям Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ языка — хочСтся всё ΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. На pypi Π½Π°ΡˆΡ‘Π» Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΎΡ‚ lexich. Π’Ρ€ΠΎΠ΄Π΅ Π΄Π΅Π»Π°Π΅Ρ‚ всё Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ ΠΈ Π΄Π°ΠΆΠ΅ большС, Π½ΠΎ какая-Ρ‚ΠΎ ΠΎΠ½Π° ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΎΠΈΠ΄Π°Π»ΡŒΠ½Π°Ρ. МнС-Ρ‚ΠΎ Π½Π°Π΄ΠΎ всСго нСсколько ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, Ρ€Π΅ΡˆΠΈΠ» сам ΠΏΠΎΠΊΠΎΠ²Ρ‹Ρ€ΡΡ‚ΡŒΡΡ с webdav ΠΈ API ЯндСкс.Диска. К слову, авторизация Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Ρ‡Π΅Ρ€Π΅Π· OAuth, Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ — Basic. Π― остановился Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΊΠ°ΠΊ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ простом. Класс для OAuth Π΅ΡΡ‚ΡŒ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΊΠΎΠΌΡƒ ΠΈ пригодится πŸ™‚

Yandex.Disk API

На страницС API Yandex.Disk Π΅ΡΡ‚ΡŒ руководство ΠΊΠ°ΠΊ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΊ Ρ‚Π°ΠΊΠΎΠΉ простой Π·Π°Π΄Π°Ρ‡Π΅ ΠΊΠ°ΠΊ моя OAuth Ρ‡Π΅Ρ€Π΅Π·Ρ‡ΡƒΡ€ Π·Π°Ρ‚Ρ€Π°Ρ‚Π½ΠΎ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Basic. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΡΠ΅Ρ‚ΡŒΡŽ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ requests, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Basic-авторизация ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° auth=(login, password). По стандарту Ρ‚Π°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ Π²Ρ…ΠΎΠ΄Π° рСализовываСтся посрСдством установки Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° HTTP запроса β€œAuthorization” Π² base_64(β€œ%s:%s” % (login, password)). Π£Ρ€Π°, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ со своим ΠΎΠ±Π»Π°ΠΊΠΎΠΌ πŸ™‚

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ шаг — Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ запроса. Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° я взял ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ свободном мСстС, ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ² Ρ‚Π°ΠΊΠΎΠΉ запрос:

PROPFIND / HTTP/1.1
Host: webdav.yandex.ru
Accept: */*
Depth: 0
Authorization: OAuth 0c4181a7c2cf4521964a72ff57a34a07

<D:propfind xmlns:D="DAV:">
  <D:prop>
    <D:quota-available-bytes/>
    <D:quota-used-bytes/>
  </D:prop>
</D:propfind>

К соТалСнию, requests ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ REST-запросы, срСди ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… отсутствуСт Ρ‚ΠΈΠΏ PROPFIND, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ придётся Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· сСссии:

req = requests.Request(type, url, headers=headers, auth=(self. login, self.password), data=data)
with requests.Session() as s:
return s.send(req.prepare())

Π³Π΄Π΅ type=β€˜PROPFIND’, url=β€˜/’, headers={β€˜Accept’: β€˜/’, β€˜Depth’: 0}, auth=(β€˜[emailΒ protected]’, β€˜password’), data=<Ρ‚Π° большая XML>. Π’ ΠΎΡ‚Π²Π΅Ρ‚ ΠΏΡ€ΠΈΠ΄Ρ‘Ρ‚ XML, Π³Π΄Π΅ Π² ΡƒΠ·Π»Π°Ρ… β€œd:quota-available-bytes” ΠΈ β€œd:quota-used-bytes” Π±ΡƒΠ΄Π΅Ρ‚ нуТная информация. И Ρ‚ΡƒΡ‚ вторая засада: Yandex ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ namespace xmlns:d=β€œDAV:β€œ. К соТалСнию, Π² lxml Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π½Π°Π΄ΠΎ явно ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ пространства ΠΈΠΌΡ‘Π½, ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π² запросС. Π’.Π΅. tree.xpath(”//d:prop”) — Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π½Π°ΠΉΠ΄Ρ‘Ρ‚ ΠΈ Π΄Π°ΠΆΠ΅ ругнётся Π½Π° прСфикс d, Π° Π²ΠΎΡ‚ tree.xpath(β€œ//d:prop”, {’d’: β€œDAV:β€œ}) — сработаСт Π½Π° ΡƒΡ€Π°. На самом Π΄Π΅Π»Π΅ использованиС Π² Π΄Π°Π½Π½ΠΎΠΌ случаС lxml — ΠΈΠ· ΠΏΡƒΡˆΠΊΠΈ ΠΏΠΎ Π²ΠΎΡ€ΠΎΠ±ΡŒΡΠΌ, достаточно ΠΈ xml.dom.minidom.

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ создания, копирования, удалСния Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹. Если ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ интСрСсно, Ρ‚ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ здСсь.

ВСсты

Π‘Ρ‚Π°Π»ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ тСсты для своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ±ΡƒΠ΄Π΅ΠΌ Π² Ρ‚Ρ€Π΅Π½Π΄Π΅ πŸ™‚ Для тСстирования принято ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ unittest. Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΏΠΎ Π½Π΅ΠΉ ΠΌΠΎΡ€Π΅, Π½ΠΎ ΠΌΠ½Π΅ Π±Ρ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ Π½Π° Π΄Π²ΡƒΡ… ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Ρ…. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ — ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ setUp ΠΈ tearDown. Они Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° класса тСста. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ случаС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Диску ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎΠ΅ врСмя, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ я вынСс ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса setUpClass ΠΈ tearDownClass, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ вызыватся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π·Π° ΠΏΡ€ΠΎΠ³ΠΎΠ½.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ — порядок выполнСния тСстов. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΠ½ опрСдСляСтся ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°. ВсС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ с прСфиксом β€œtest_” ΠΏ

Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ списка рСсурсов ΠΈ скачиваниС Ρ„Π°ΠΉΠ»ΠΎΠ². – Delphi Π² Internet

Π˜Ρ‚Π°ΠΊ, ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ Ρ‚Π΅ΠΌΡƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с сСрвисом ЯндСкс.Диск Π² Delphi. ΠšΡ‚ΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ‚ ΠΈΠ»ΠΈ ΡƒΠΆΠ΅ Π·Π°Π±Ρ‹Π» – Ρ€Π°Π½Π΅Π΅ я ΡƒΠΆΠ΅ писал ΠΏΡ€ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρƒ с API этого сСрвиса ΠΈ Π΄Π°ΠΆΠ΅ Π²Ρ‹Π»ΠΎΠΆΠΈΠ» нСбольшой исходник, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ основныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ WebDAV с использованиСм ΠΌΠΎΠ΅ΠΉ любимой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Synapse. Π’ ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΉ Ρ€Π°Π· я остановился Π½Π° Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π» Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ классС TWebDAVSend ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° WebDAV Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ PROPFIND, MKCOL ΠΈ Ρ‚. Π΄. БСгодня ΠΌΡ‹ с Π’Π°ΠΌΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΠΌ возмоТности этого класса ΠΈ сдСлаСм Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Π° Π² Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ ЯндСкс.Диска.

ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ API ЯндСкс.Диска, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Delphi ΠΈ приступаСм ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅.

Π§Ρ‚Π΅Π½ΠΈΠ΅ списка рСсурсов

Π’ Π½Π°Ρ‡Π°Π»Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ разбСрСмся с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ присылаСтся Π½Π°ΠΌ Π² ΠΎΡ‚Π²Π΅Ρ‚Π΅ Π½Π° запрос ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ PROPFIND. ПослС выполнСния PROPFIND сСрвСр Π½Π°ΠΌ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ XML-Ρ„Π°ΠΉΠ», содСрТащий свойства рСсурсов. ΠŸΡ€ΠΈ этом ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΡƒΠ·Π΅Π» с описаниСм свойств рСсурса ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠ΅ элСмСнты:

  • d:href – ΠΏΡƒΡ‚ΡŒ ΠΊ рСсурсу
  • d:propstat– содСрТит ΠΊΠΎΠ΄ статуса выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ Π½Π°Π±ΠΎΡ€ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… свойств рСсурса
    • d:status – ΠΊΠΎΠ΄ статуса выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. НапримСр, Ссли ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ PROPPATCH (Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ свойств рСсурса), Ρ‚ΠΎ этот ΡƒΠ·Π΅Π» ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΌ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠ»Π° Π»ΠΈ опСрация ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΈΠ»ΠΈ Π½Π΅Ρ‚.
    • d:prop– коллСкция свойств рСсурса
      • d:creationdate – Π΄Π°Ρ‚Π° создания рСсурса Π² UTC
      • d:displayname – имя рСсурса, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для отобраТСния Π² интСрфСйсС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ
      • d:getcontentlength – Ρ€Π°Π·ΠΌΠ΅Ρ€ рСсурса Π² Π±Π°ΠΉΡ‚Π°Ρ…. БоотвСтствСнно, для ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ это свойство всСгда Ρ€Π°Π²Π½ΠΎ 0.
      • d:getlastmodified – Π΄Π°Ρ‚Π° послСднСго измСнСния рСсурса (ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ отличаСтся ΠΎΡ‚ Π΄Π°Ρ‚Ρ‹, прСдставлСнной Π² d:creationdate)
      • d:resourcetype – ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ рСсурс являСтся ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠ΅ΠΉ. Если Ρƒ этого ΡƒΠ·Π»Π° имССтся Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ пустой ΡƒΠ·Π΅Π»Β d:collection, Β Ρ‚ΠΎ рСсурс являСтся ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠ΅ΠΉ, ΠΈΠ½Π°Ρ‡Π΅ – Ρ„Π°ΠΉΠ»ΠΎΠΌ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ допишСм наш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ сдСлаСм Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² интСрфСйсС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π»ΠΈΡΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Π·Π°ΠΏΡ€ΠΎΡˆΠ΅Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ PROPFIND. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρƒ мСня Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ стал Ρ‚Π°ΠΊΠΈΠΌ:

Π’ ListView Π±ΡƒΠ΄Π΅ΠΌ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ рСсурсам. Π’ качСствС Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… классов для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с API ЯндСкс.Диска я создал ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ классы:

класс, хранящий ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ рСсурсу:

type
  TWDResource = class
  private
    FHref         : string;
    FStatusCode   : integer;
    FContentLength: int64;
    FCreationDate : TDateTime;
    FLastmodified : TDateTime;
    FDisplayName  : string;
    FContentType  : string;
    FCollection   : Boolean;
  public
    property StatusCode   : integer read FStatusCode;
    property ContentLength: int64 read FContentLength;
    property CreationDate : TDateTime read FCreationDate;
    property Lastmodified : TDateTime read FLastmodified;
    property DisplayName  : string read FDisplayName;
    property ContentType  : string read FContentType;
    property Href: string read FHref;
    property Collection   : Boolean read FCollection;
end;

ΠŸΠΎΡ‚ΠΎΠΌ Π² этот класс ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для рСдактирования свойств ΠΈ Ρ‚. Π΄. Пока ΠΆΠ΅ ΠΎΠ½ Ρƒ нас Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ – Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ рСсурсу.
Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ класс – коллСкция (список рСсурсов) Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°:

TWDResourceList = class(TList)
public
  constructor Create;
  destructor Destroy;override;
  procedure Clear;
end;

Π—Π΄Π΅ΡΡŒ, Π²Ρ€ΠΎΠ΄Π΅ Π±Ρ‹, Ρ‚ΠΎΠΆΠ΅ Π½ΠΈΡ‡Π΅Π³ΠΎ свСрхслоТного Π½Π΅Ρ‚Ρƒ – класс Ρ…Ρ€Π°Π½ΠΈΡ‚ список всСх Π·Π°ΠΏΡ€ΠΎΡˆΠ΅Π½Π½Ρ‹Ρ… Ρ€Π°Π½Π΅Π΅ рСсурсов ΠΈ, ΠΏΠΎ нСобходимости – чистит список.
Π’Π΅ΠΏΠ΅Ρ€ΡŒ приступим ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ с API ΠΈ напишСм ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ OnClick ΠΊΠ½ΠΎΠΏΠΊΠΈ β€œΠ’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒβ€ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

procedure TForm5.Button1Click(Sender: TObject);
Β 
procedure ParseResources(const AXMLStr: string);
var XMLDoc: IXMLDocument;
    ResponseNode,ChildNode,PropNodeChild, PropertyNode: IXMLNode;
     s, su,Value: string;
begin
  XMLDoc:=TXMLDocument.Create(nil);
  try
    XMLDoc.LoadFromXML(AXMLStr);
    if not XMLDoc.IsEmptyDoc then
      begin
        ResponseNode:=XMLDoc.DocumentElement.ChildNodes.First;
        while Assigned(ResponseNode) do
          begin
            Resources. Add(TWDResource.Create);
            ChildNode:=ResponseNode.ChildNodes.First;
            while Assigned(ChildNode) do
              begin
                if ChildNode.NodeName='d:href' then
                   Resources.Last.FHref:=ChildNode.Text
                else
                  if ChildNode.NodeName='d:propstat' then
                    begin
                      PropNodeChild:=ChildNode.ChildNodes.First;
                      while Assigned(PropNodeChild) do
                        begin
                          if PropNodeChild.NodeName='d:status' then
                            begin
                              Value:=PropNodeChild.Text;
                              s := Trim(SeparateRight(Value, ' '));
                              su := Trim(SeparateLeft(s, ' '));
                              Resources.Last.FStatusCode:=StrToIntDef(su, 0);
                            end
                          else
                            if PropNodeChild.NodeName='d:prop' then
                              begin
                                PropertyNode:=PropNodeChild.ChildNodes.First;
                                while Assigned(PropertyNode) do
                                  begin
                                    if PropertyNode.NodeName='d:creationdate' then
                                      Resources.Last.FCreationDate:=UTCToSystemTime(ISODateTime2UTC(PropertyNode.Text))
                                    else
                                      if PropertyNode.NodeName='d:displayname' then
                                        Resources.Last.FDisplayName:=Utf8ToAnsi(PropertyNode.Text)
                                      else
                                        if PropertyNode.NodeName='d:getcontentlength' then
                                          Resources.Last.FContentLength:=PropertyNode.NodeValue
                                        else
                                          if PropertyNode.NodeName='d:getlastmodified' then
                                            Resources.Last.FLastmodified:=DecodeRfcDateTime(PropertyNode.Text)
                                          else
                                            if PropertyNode.NodeName='d:resourcetype' then
                                              Resources.Last.FCollection:=PropertyNode.ChildNodes.Count&gt;0;
                                    PropertyNode:=PropertyNode.NextSibling;
                                  end;
                              end;
                          PropNodeChild:=PropNodeChild.NextSibling;
                        end;
                    end;
                ChildNode:=ChildNode.NextSibling;
              end;
            ResponseNode:=ResponseNode.NextSibling;
          end;
      end;
  finally
    XMLDoc:=nil;
  end;
end;
Β 
var Str: string;
  I: Integer;
begin
  WebDAV.Login := Edit1.Text;
  WebDAV.Password := Edit2.Text;
  Resources.Clear;
  Str:=WebDAV.PROPFIND(1, InputBox('РСсурс', 'РСсурс', ''));
  if Length(Trim(Str))&gt;0 then
    begin
      ParseResources(Str);
      for I := 0 to Resources.Count-1 do
        begin
          with ListView1.Items.Add do
            begin
              Caption:=Resources[i].DisplayName;
              SubItems.Add(Resources[i].Href);
              SubItems.Add(DateTimeToStr(Resources[i].CreationDate));
              SubItems.Add(DateTimeToStr(Resources[i].Lastmodified));
              SubItems.Add(IntToStr(Resources[i].ContentLength));
              if Resources[i].Collection then
                SubItems.Add('yes')
              else
                SubItems.Add('no');
              SubItems.Add(IntToStr(Resources[i].StatusCode))
            end;
        end;
Β 
    end;
end;

Выглядит довольно ΠΆΡƒΡ‚Π΅Π½ΡŒΠΊΠΎ, поэтому рассмотрим этот ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎ частям. НачнСм с основного ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹. Π’Π½Π°Ρ‡Π°Π»Π΅ ΠΌΡ‹ записываСм Π»ΠΎΠ³ΠΈΠ½/ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ PROPFIND свСдСния ΠΏΠΎ рСсурсу, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ задаст Π² InputBox:

WebDAV.Login := Edit1.Text;
  WebDAV.Password := Edit2.Text;
  Resources.Clear;
  Str:=WebDAV.PROPFIND(1, InputBox('РСсурс', 'РСсурс', ''));

Если запрос ΠΏΡ€ΠΎΡˆΠ΅Π» ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΈ сСрвСр Π²Π΅Ρ€Π½ΡƒΠ» Π½Π°ΠΌ ΠΎΡ‚Π²Π΅Ρ‚, Ρ‚ΠΎ выполняСтся влоТСнная ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ParseResources, которая ΠΈ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅Ρ‚ XML-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚. Π‘Π°ΠΌΠ° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Ρ…ΠΎΡ‚ΡŒ ΠΈ выглядит Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΎ, Π½ΠΎ являСтся довольно простой – ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎ всСм ΡƒΠ·Π»Π°ΠΌ XML ΠΈ считываСт ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ рСсурсам. Если Π’Π°ΠΌ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ParseResources, Ρ‚ΠΎ Π½ΠΈΠΆΠ΅ я прСдставил Π’Π°ΠΌ листинг этой ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ коммСнтариями ΠΊ ΠΊΠΎΠ΄Ρƒ:

procedure ParseResources(const AXMLStr: string);
var XMLDoc: IXMLDocument;
    ResponseNode,ChildNode,PropNodeChild, PropertyNode: IXMLNode;
     s, su,Value: string;
begin
  XMLDoc:=TXMLDocument.Create(nil);
  try
    XMLDoc.LoadFromXML(AXMLStr);
    if not XMLDoc.IsEmptyDoc then
      begin
        //Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΡƒΠ·Π΅Π» d:response
        ResponseNode:=XMLDoc.DocumentElement.ChildNodes.First;
        while Assigned(ResponseNode) do
          begin
            //создаСм запись Π½ΠΎΠ²ΠΎΠ³ΠΎ рСсурса Π² спискС
            Resources.Add(TWDResource.Create);
            //ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΠΌ ΠΏΠΎ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌ ΡƒΠ·Π»Π°ΠΌ d:response
            ChildNode:=ResponseNode.ChildNodes.First;
            while Assigned(ChildNode) do
              begin
                if ChildNode.NodeName='d:href' then
                   Resources.Last.FHref:=ChildNode.Text
                else
                  //нашли ΡƒΠ·Π΅Π» со свойствами рСсурса
                  if ChildNode.NodeName='d:propstat' then
                    begin
                      //Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ ΡƒΠ·Π΅Π», ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ - это d:status
                      PropNodeChild:=ChildNode.ChildNodes.First;
                      while Assigned(PropNodeChild) do
                        begin
                          //считываСм ΠΊΠΎΠ΄ статуса
                          if PropNodeChild.NodeName='d:status' then
                            begin
                              Value:=PropNodeChild.Text;
                              s := Trim(SeparateRight(Value, ' '));
                              su := Trim(SeparateLeft(s, ' '));
                              Resources.Last.FStatusCode:=StrToIntDef(su, 0);
                            end
                          else
                            //нашли ΡƒΠ·Π΅Π» d:prop - проходимся ΠΏΠΎ Π΅Π³ΠΎ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌ ΡƒΠ·Π»Π°ΠΌ
                            if PropNodeChild.NodeName='d:prop' then
                              begin
                                PropertyNode:=PropNodeChild.ChildNodes.First;
                                while Assigned(PropertyNode) do
                                  begin
                                    if PropertyNode.NodeName='d:creationdate' then
                                      Resources.Last.FCreationDate:=UTCToSystemTime(ISODateTime2UTC(PropertyNode.Text))
                                    else
                                      if PropertyNode.NodeName='d:displayname' then
                                        Resources.Last.FDisplayName:=Utf8ToAnsi(PropertyNode.Text)
                                      else
                                        if PropertyNode.NodeName='d:getcontentlength' then
                                          Resources.Last.FContentLength:=PropertyNode.NodeValue
                                        else
                                          if PropertyNode.NodeName='d:getlastmodified' then
                                            Resources.Last.FLastmodified:=DecodeRfcDateTime(PropertyNode.Text)
                                          else
                                            if PropertyNode.NodeName='d:resourcetype' then
                                              Resources.Last.FCollection:=PropertyNode.ChildNodes.Count&gt;0;
                                    //Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ ΡƒΠ·Π΅Π» Ρƒ d:prop
                                    PropertyNode:=PropertyNode.NextSibling;
                                  end;
                              end;
                          //Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ ΡƒΠ·Π΅Π» Ρƒ d:propstat
                          PropNodeChild:=PropNodeChild.NextSibling;
                        end;
                    end;
                //Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ ΡƒΠ·Π΅Π» Ρƒ d:response
                ChildNode:=ChildNode.NextSibling;
              end;
            //Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΠ·Π΅Π» d:response
            ResponseNode:=ResponseNode.NextSibling;
          end;
      end;
  finally
    XMLDoc:=nil;
  end;
end;

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ список рСсурсов Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ снова возвращаСмся Π² основной ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ OnClick ΠΈ заполняСм ListView Π΄Π°Π½Π½Ρ‹ΠΌΠΈ:

for I := 0 to Resources.Count-1 do
   begin
      with ListView1.Items.Add do
         begin
            Caption:=Resources[i].DisplayName;
            SubItems.Add(Resources[i].Href);
            SubItems.Add(DateTimeToStr(Resources[i].CreationDate));
            SubItems.Add(DateTimeToStr(Resources[i].Lastmodified));
            SubItems.Add(IntToStr(Resources[i].ContentLength));
            if Resources[i].Collection then
              SubItems.Add('yes')
            else
              SubItems.Add('no');
            SubItems.Add(IntToStr(Resources[i].StatusCode))
         end;
   end;

ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΎΡ…ΠΎΠ΄ ΠΏΠΎ всСму Π΄Π΅Ρ€Π΅Π²Ρƒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² Π² Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π΅, Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ PROPFIND Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ свСдСния. Π’Π΅ΠΏΠ΅Ρ€ΡŒ посмотрим ΠΊΠ°ΠΊ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°.

Π‘ΠΊΠ°Ρ‡ΠΈΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² с ЯндСкс.Диска

Π’Π½Π°Ρ‡Π°Π»Π΅ посмотрим, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ докумСнтация ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° GET. Π’ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ Ρ‚ΡƒΡ‚ Π½Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ GET, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ ΡƒΠΆΠ΅ сто Ρ€Π°Π· использовали Π² самых Ρ€Π°Π·Π½Ρ‹ΠΌ ситуациях ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ API. ЯндСкс.Диск Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π½Π°ΠΌ Ρ„Π°ΠΉΠ» Π² сТатом Π²ΠΈΠ΄Π΅, Ссли сТатиС ΠΎΠΏΡ€Π°Π²Π΄Π°Π½ΠΎ (ΠΏΡ€ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρƒ с GZIP я писал Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ β€œΠ˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ GZip Π² Synapse.β€œ). БСгодня ΠΌΡ‹ рассмотрим скачиваниС Π±Π΅Π· использованиС сТатия.

ДописываСм Ρƒ класса TWebDAVSend ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄:

type
  TWebDAVSend = class
  private
    FHTTP: THTTPSend;
    [...]
  public
    [...]
    function Get(const ElementHref:string; var Response:TStream):boolean;
  end;
Β 
function TWebDAVSend.Get(const ElementHref: string; var Response:TStream): boolean;
var URL: string;
begin
  if not Assigned(Response) then Exit;
  URL:=GetRequestURL(ElementHref,false);
  with FHTTP do
  begin
    Headers.Clear;
    Document.Clear;
    Headers.Add('Authorization: Basic ' + FToken);
    Headers.Add('Accept: */*');
    if HTTPMethod('GET', URL) then
      begin
        Result:=ResultCode=200;
        if not Result then
          raise Exception.Create(IntToStr(ResultCode)+' '+ResultString)
        else
          Document.SaveToStream(Response);
      end
    else
      raise Exception.Create(rsPropfindError+' '+ResultString);
  end;
end;

ΠœΠ΅Ρ‚ΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: Π² качСствС Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Get ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΡƒΡ‚ΡŒ ΠΊ рСсурсу ΠΈ ΠΏΠΎΡ‚ΠΎΠΊ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ скачанныС Π΄Π°Π½Π½Ρ‹Π΅. Π—Π΄Π΅ΡΡŒ слСдуСт ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ElementHref – это строка, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΈΠ· XML, ΠΊΠΎΠ³Π΄Π° парсили список рСсурсов (свойство Href). Π’Π½Π°Ρ‡Π°Π»Π΅ собираСтся URL ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ находится Ρ„Π°ΠΉΠ», Π·Π°Ρ‚Π΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ выполнятся ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Get. Если запрос Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ, Ρ‚ΠΎ всС Π΄Π°Π½Π½Ρ‹Π΅ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² ΠΏΠΎΡ‚ΠΎΠΊ Response. Π’ΠΎΡ‚ ΠΈ вся Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Π½ΠΈΡŽ Ρ„Π°ΠΉΠ»ΠΎΠ² с ЯндСкс.Диска πŸ™‚ ΠžΡΡ‚Π°Π»ΠΎΡΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ эту Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅.

Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ скачивания Ρ„Π°ΠΉΠ»Π° с ЯндСкс.Диска я написал ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ API ЯндСкса

ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ часто ΡΠΏΡ€Π°ΡˆΠΈΠ²Π°ΡŽΡ‚, ΠΊΠ°ΠΊ ΠΌΡ‹ Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈ Foster Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ошибки Π² Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°Ρ… ЯндСкс.Π”ΠΈΡ€Π΅ΠΊΡ‚. ВсС Π΄Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ нашСго сСрвиса Π΅ΡΡ‚ΡŒ доступ ΠΊ API ЯндСкса. Но, ΠΊΠ°ΠΊ извСстно, нСльзя Ρ‚Π°ΠΊ просто Π²Π·ΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с API ЯндСкс.Π”ΠΈΡ€Π΅ΠΊΡ‚. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ рСгистрации прилоТСния. Π’ этом постС я Ρ…ΠΎΡ‡Ρƒ пошагово Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΌΡ‹ рСгистрировали ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΎΠΌ.Β 

ΠšΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ API?

Запрос ΠΊ API выполняСтся ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π”ΠΈΡ€Π΅ΠΊΡ‚Π° β€” рСкламодатСля ΠΈΠ»ΠΈ Ρ€Π΅ΠΊΠ»Π°ΠΌΠ½ΠΎΠ³ΠΎ агСнтства. Π’ запросС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ β€” ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄, Ρ€Π°Π·Ρ€Π΅ΡˆΠ°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ этого ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ прилоТСния

Π’ самом Π½Π°Ρ‡Π°Π»Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Для этого ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° страницу OAuth, заполняСм Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ поля, сохраняСм. Π­Ρ‚ΠΎΡ‚ шаг Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π΅Π½. Π”Π°Π»Π΅Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄Π°Ρ‚ΡŒ заявку Π½Π° доступ ΠΊ API.

На всякий случай напоминаю, Ρ‡Ρ‚ΠΎ список всСх ΠΏΠΎΠ΄Π°Π½Π½Ρ‹Ρ… заявок ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ здСсь.

Заявка Π½Π° тСстовый доступ

На ΠΏΠ΅Ρ€Π²Ρ‹Ρ… этапах Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², скорСС всСго, Π±ΡƒΠ΄Π΅Ρ‚ достаточно заявки Π½Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ доступ ΠΊ API Π”ΠΈΡ€Π΅ΠΊΡ‚Π°. Он Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Ρ‚ΠΎΠ»ΡŒΠΊΠΎ доступ ΠΊ Β«ΠŸΠ΅ΡΠΎΡ‡Π½ΠΈΡ†Π΅Β». ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½Π½ΡƒΡŽ заявку Π½Π° тСстовый доступ нСслоТно:

  1. КликаСм по кнопкС «Новая заявка».
  2. Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ «ВСстовый доступ».
  3. Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΈΠ· списка своС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, созданноС Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠΌ шагС ΠΈ заполняСм Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ поля (Π½Π° этом этапС ΠΌΠΎΠΆΠ½ΠΎ особо Π½Π΅ ΡΠΎΡ‡ΠΈΠ½ΡΡ‚ΡŒ, достаточно ΠΎΠ±Ρ‰ΠΈΡ… свСдСний).

Π‘ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ Π² 98% ваша заявка Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π°.

Π’ ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ Π΄Π²ΡƒΡ… ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ… случаСв ЯндСкс сочтСт, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π½ΠΎΡΠΈΡ‚ΡŒ Π²Ρ€Π΅Π΄ Ρ€Π΅ΠΊΠ»Π°ΠΌΠ½Ρ‹ΠΌ кампаниям ΠΈ ΠΎΡ‚ΠΊΠ»ΠΎΠ½ΠΈΡ‚ заявку.

Заявка Π½Π° ΠΏΠΎΠ»Π½Ρ‹ΠΉ доступ

Однако для запуска ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ³ΠΎ сСрвиса тСстового доступа ΠΌΠ°Π»ΠΎ. Для получСния ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ доступа Π·Π°Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° страницу рСдактирования заявки ΠΈ ΠΊΠ»ΠΈΠΊΠ°Π΅ΠΌ ΠΏΠΎ ссылкС Β«ΠžΡ„ΠΎΡ€ΠΌΠΈΡ‚ΡŒ заявку Π½Π° ΠΏΠΎΠ»Π½Ρ‹ΠΉ доступ». Π”Π°Π»Π΅Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡΠ²ΠΈΡ‚ΡŒ всС свои ΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ скиллы ΠΏΡ€ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ поля Β«ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ схСму взаимодСйствия вашСго прилоТСния с Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΎΠΌΒ».

Π‘Ρ€Π°Π·Ρƒ скаТу, Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ‰ΠΈΠ΅ Ρ„Ρ€Π°Π·Ρ‹ ЯндСкс Π½Π΅ ΠΏΡ€ΠΎΠΌΠΎΠ΄Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚. Заявку ΠΎΡ‚ΠΊΠ»ΠΎΠ½ΠΈΡ‚, Π° Π² коммСнтариях попросит Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ систСмы.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π² описании: 1. Π”Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ описаниС систСмы. 2. ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ вСсь список ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² API, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ планируСтся ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ систСмы. 2.1. Π£ΠΊΠ°Π·Π°Ρ‚ΡŒ, с ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ API Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ. 2.2. ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π²Ρ‹Π±Ρ€Π°Π½Ρ‹ ΠΈΠΌΠ΅Π½Π½ΠΎ эти ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΊΠ°ΠΊΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ систСмы ΠΎΠ½ΠΈ Ρ€Π΅ΡˆΠ°ΡŽΡ‚. 2.3. Как ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ API. 3. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ систСма провСряСт Π»ΠΈΠΌΠΈΡ‚Ρ‹ Π”ΠΈΡ€Π΅ΠΊΡ‚Π° (Π° ΠΈΡ… Π½Π΅ΠΌΠ°Π»ΠΎ), ΠΈ Ρ‡Ρ‚ΠΎ происходит ΠΏΡ€ΠΈ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½ΠΈΠΈ Π»ΠΈΠΌΠΈΡ‚ΠΎΠ². Π’ΡƒΡ‚ самоС Π³Π»Π°Π²Π½ΠΎΠ΅ ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ сразу пСрСстаСм Π»ΠΎΠΌΠΈΡ‚ΡŒΡΡ ΠΊ API, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ΡˆΠ»ΠΈ Π·Π° Π³Ρ€Π°Π½ΠΈ Π΄ΠΎΠ·Π²ΠΎΠ»Π΅Π½Π½ΠΎΠ³ΠΎ. МоТно ΠΊΠΈΠ½ΡƒΡ‚ΡŒ ΠΏΠ°Ρ€Ρƒ строк ΠΊΠΎΠ΄Π° с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½ΠΈΡŽ Π»ΠΈΠΌΠΈΡ‚ΠΎΠ².

4. Π–Π΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ для ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ нСсколько ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ΠΎΠ² интСрфСйса. Никто Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ интСрфСйса Π³ΠΎΡ‚ΠΎΠ²ΠΎΠΉ систСмы, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒΡΡ схСматичСским располоТСниСм ΠΊΠ½ΠΎΠΏΠΎΠΊ. ΠŸΡ€ΠΎΠ΄Π΅Π»Π°Π² вСсь ΠΏΡƒΡ‚ΡŒ, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· час послС ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΉ ΠΏΠΎΠ΄Π°Ρ‡ΠΈ заявки ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄Π΅Π»ΠΈ Π΄ΠΎΠ»Π³ΠΎΠΆΠ΄Π°Π½Π½Ρ‹ΠΉ статус Β«ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΎΒ» для ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ доступа.

На Ρ„ΠΈΠ½ΠΈΡˆΠ΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ систСму Foster Π² Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ Π΅Ρ‘ Π·Π½Π°Π΅Ρ‚Π΅. БСгодня ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ сСрвиса, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, ΠΌΠΎΠ³ΡƒΡ‚ с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ошибки Π² ЯндСкс.Π”ΠΈΡ€Π΅ΠΊΡ‚ ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΡ… Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ наврСдят Ρ€Π΅ΠΊΠ»Π°ΠΌΠ½ΠΎΠΉ ΠΊΠ°ΠΌΠΏΠ°Π½ΠΈΠΈ. ΠšΡΡ‚Π°Ρ‚ΠΈ, с Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ сСрвиса с услугой [PPC 2.0] ΠΎΡ‚ Netpeak ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ Π² кСйсС.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ЯндСкс.Диск

ЯндСкс.Диск – ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ЯндСкс, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ устройствами ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ ссылками Π½Π° Ρ„Π°ΠΉΠ»Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π½Ρ‹ΠΌΠΈ Π½Π° сСрвисах ЯндСкса.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ЯндСкс.Диска прост. На вашСм ПК устанавливаСтся клиСнтскоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ создаСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ – «Π―ндСкс.Диск». Π’ этой ΠΏΠ°ΠΏΠΊΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² ΠΎΠ±Π»Π°ΠΊΠ΅. Π‘Ρ€Π°Π·Ρƒ ΠΆΠ΅ послС этого Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Π½Π° сСрвСр ЯндСкса.

ПослС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Диска, сСрвис прСдоставляСт 3 Π“Π± свободного мСста. Установив ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ЯндСкс.Диск, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ² Π½Π° Диск ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈ подСлившись ссылкой Π½Π° Ρ„Π°ΠΉΠ» Π² соц.сСти, Π²Ρ‹ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚Π΅ это пространство Π΄ΠΎ 10 Π“Π±. Π’Π°ΠΊ, достаточно быстро, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄Π°ΠΆΠ΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π² Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΌ мСстС.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, хранящиСся Π½Π° ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠΌ дискС, просто настроив ΠΊ Π½Π΅ΠΌΡƒ доступ. ΠŸΡ€ΠΈ этом ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ — просто скопируйтС ΠΈ ΠΏΠ΅Ρ€Π΅ΡˆΠ»ΠΈΡ‚Π΅ ссылку, Π° ваши ΠΊΠΎΠ»Π»Π΅Π³ΠΈ, Π΄Ρ€ΡƒΠ·ΡŒΡ ΠΈΠ»ΠΈ Ρ€ΠΎΠ΄Π½Ρ‹Π΅ сами ΠΈΡ… ΡΠΊΠ°Ρ‡Π°ΡŽΡ‚.

Доступ ΠΊ хранящимся Π΄Π°Π½Π½Ρ‹ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΠΈΠ· любой Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΌΠΈΡ€Π°, с любого устройства, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ.

Как ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ЯндСкс.Диском:

  • Π§Π΅Ρ€Π΅Π· Π²Π΅Π±-страницу сСрвиса нСпосрСдствСнно Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅.
  • ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ клиСнтского прилоТСния, установлСнного Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ ΠΈΠ»ΠΈ мобильноС устройство.
  • Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ WebDAV-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° WebDAV позволяСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ ЯндСкс.Диску с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ любого WebDAV-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π² API Диска. Ѐункция API — Application Programming Interface (Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ) – позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΉ диск Π² Π»ΡŽΠ±Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ…, ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‰ΠΈΡ… Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° WebDAV. ИспользованиС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ЯндСкс.Диском ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ сущСствСнно Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Π΅Π³ΠΎ возмоТности.

Handy Backup Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с ЯндСкс.Диском.

Бозданная Π½Π°ΠΌΠΈ бСсплатная вСрсия ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ЯндСкс.Диск Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, ΠΏΠ°ΠΏΠΊΠΈ, ΠΏΠ°ΠΏΠΊΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Windows, Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… 1Π‘.

ΠŸΠ»Π°Ρ‚Π½Ρ‹Π΅ вСрсии ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ЯндСкс.Диск, позволяя Π±ΡΠΊΠ°ΠΏΠΈΡ‚ΡŒ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Π² Ρ‚ΠΎΠΌ числС MySQL, MS SQL, PostgreSQL, DB2, MS Exchange ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

ΠžΠ±Π·ΠΎΡ€ ЯндСкс.Диска 2020 — Российская Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° Google

ЯндСкс.Диск

2,00 Π΄ΠΎΠ»Π»Π°Ρ€Π° БША Π² мСсяц Π·Π° 100 Π“Π‘

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

7,0 / 10

ΠŸΠ»ΡŽΡΡ‹

  • ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° использования
  • Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ с офисом
  • Π₯ΠΎΡ€ΠΎΡˆΠΈΠ΅ Ρ†Π΅Π½Ρ‹
  • Π—Π°Ρ‰ΠΈΡ‰Π΅Π½ΠΎ ΠΎΡ‚ U.Гос. УчрСТдСния
  • Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ для создания ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ΠΎΠ² Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ стола

ΠœΠΈΠ½ΡƒΡΡ‹

  • ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹Π΅ возмоТности совмСстного использования
  • Бкорости ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°ΡΡ‚ΠΎΡ€ΠΎΠΆΠΈΡ‚ΡŒΡΡ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ Π•Π²Ρ€ΠΎΠΏΡ‹
  • НСизвСстная Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ
  • Π‘Π΅Π· ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
  • ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°

ЯндСкс.Диск ΠžΠ±Π·ΠΎΡ€

ЯндСкс.Диск ΠΈΠ»ΠΈ, ΠΊΠ°ΠΊ ΠΌΡ‹ Π΅Π³ΠΎ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌ, российский Google — ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ.Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½ΠΎΠ΅ ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ ΠΊΠΎΠ½ΠΊΡƒΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ с Π·Π°ΠΏΠ°Π΄Π½Ρ‹ΠΌΠΈ компаниями. Π¦Π΅Π½Ρ‹ ΠΈ ΠΏΠ»Π°Π½Ρ‹ ЯндСкс Диска относятся ΠΊ срСднСму классу ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΌΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°ΠΌΠΈ. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… областях, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ совмСстного использования, нСизвСстная Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΎΡ‡Π΅Π½ΡŒ ограничСнная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°. Если Π²Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ»ΠΈ этот ΠΎΠ±Π·ΠΎΡ€ ЯндСкс.Диска, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΌΠΎΠ³ΡƒΡ‚ Π»ΠΈ государствСнныС ΠΎΡ€Π³Π°Π½Ρ‹ БША ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ вашим Ρ„Π°ΠΉΠ»Π°ΠΌ, ΠΎΠ½ΠΈ, вСроятно, Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС Π²Ρ‹ ΠΏΠΎΠΏΠ°Π»ΠΈ Π² Π½ΡƒΠΆΠ½ΠΎΠ΅ мСсто. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π½Π΅ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° этом ΠΈ просмотритС наш список Π»ΡƒΡ‡ΡˆΠΈΡ… поставщиков ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰.

ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΎΠ±Π·ΠΎΡ€ ЯндСкс.Диска Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π½ΠΈΠΆΠ΅.


ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ ЯндСкс.Диску

# БСрвис Π Π΅ΠΉΡ‚ΠΈΠ½Π³ ОписаниС ΠŸΠ»Π°Ρ‚Π½Ρ‹ΠΉ Ρ‚Π°Ρ€ΠΈΡ„ ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ
1

pCloud

ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ±Π·ΠΎΡ€

pCloud — ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΉ сСрвис, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ гордится Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π²Ρ‹ΡΠΎΡ‡Π°ΠΉΡˆΡƒΡŽ Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΡƒΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρƒ (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°) с ΠΏΠΎΡ‚Ρ€ΡΡΠ°ΡŽΡ‰ΠΈΠΌΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈ для синхронизации.Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π±Ρ‹Π»ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ с ΠΈΠ½Π½ΠΎΠ²Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ ΠΏΠ»Π°Π½Π°ΠΌΠΈ LIFETIME. Он прост Π² использовании ΠΈ являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰ Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅. 10 Π“Π‘ бСсплатного Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°.

4,99 $ / мСсяц 500 Π“Π‘

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² pCloud
2

Sync.com

ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ±Π·ΠΎΡ€

Sync.com — канадскоС ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Π½ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ Ρ€Π°Π·Π³Π»Π°ΡˆΠ΅Π½ΠΈΡ.Он ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π±Π΅ΡΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Π½ΡƒΡŽ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ (Ρ‡Π΅Ρ€Π΅Π· ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°) с ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈ для синхронизации, ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈ извлСчСния Ρ„Π°ΠΉΠ»ΠΎΠ². 5 Π“Π‘ бСсплатного Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°.

8 $ / мСсяц 2000 Π“Π‘

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Sync.com
3

Icedrive

ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ±Π·ΠΎΡ€

Icedrive — это ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π² Π’Π΅Π»ΠΈΠΊΠΎΠ±Ρ€ΠΈΡ‚Π°Π½ΠΈΠΈ, основноС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ удСляСтся бСзопасности Π²Π°ΡˆΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ².Они Π΄ΠΎΡΡ‚ΠΈΠ³Π°ΡŽΡ‚ этого с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Twofish, Ρ‡Ρ‚ΠΎ, бСзусловно, Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΡƒΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΠ΅. ΠŸΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ минималистичный Π΄ΠΈΠ·Π°ΠΉΠ½ Π² сочСтании с ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ прилоТСниями ΠΈ интСрСсными ΠΏΠ»Π°Π½Π°ΠΌΠΈ LIFETIME Π΄Π΅Π»Π°Π΅Ρ‚ ΠΈΡ… интСрСсным Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ! 10 Π“Π‘ бСсплатного Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°.

4,99 € / мСсяц 1000 Π“Π‘

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Icedrive
4

ΠœΠ•Π“Π

ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ±Π·ΠΎΡ€

MEGA ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ бСзопасноС ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ с ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.Π£ Π½Π΅Π³ΠΎ соврСмСнный / ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²Ρ‹ΠΉ интСрфСйс. Онлайн-ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π°, ΠΈ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ / скачивания ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠ΅. 15 Π“Π‘ бСсплатного Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°.

4,99 € / мСсяц 400 Π“Π‘

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² ΠœΠ•Π“Π
5

ВрСсорит

ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ±Π·ΠΎΡ€

Tresorit Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ ваши Ρ„Π°ΠΉΠ»Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡˆΠ²Π΅ΠΉΡ†Π°Ρ€ΡΠΊΠΈΡ… Π·Π°ΠΊΠΎΠ½ΠΎΠ² ΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.Он ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠΎΡ‚Ρ€ΡΡΠ°ΡŽΡ‰ΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ синхронизации, возмоТности совмСстного использования ΠΈ прСвосходит практичСски Π²ΠΎ всСх Π΄Ρ€ΡƒΠ³ΠΈΡ… областях, Π½ΠΎ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΡƒΠ»ΡŽ с ΠΎΡ‡Π΅Π½ΡŒ Π΄ΠΎΡ€ΠΎΠ³ΠΈΠΌΠΈ ΠΈ нСконкурСнтоспособными Ρ†Π΅Π½Π°ΠΌΠΈ. 3 Π“Π‘ бСсплатного Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°.

9,99 € / мСсяц 500 Π“Π‘

Иди Π² ВрСсорит

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ:

Π¦Π΅Π½Ρ‹ ΠΈ ΠΏΠ»Π°Π½Ρ‹
Для ΠΊΠΎΠ³ΠΎ это?
ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° использования
Бинхронизация Ρ„Π°ΠΉΠ»ΠΎΠ²
ОбмСн Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ
ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ²
Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ
Онлайн-ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°
Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅


ЯндСкс.Π₯арактСристики диска


Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈ ΠΏΠ»Π°Π½Ρ‹ ЯндСкс Диска

ЯндСкс.Диск ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько Ρ‚Π°Ρ€ΠΈΡ„Π½Ρ‹Ρ… ΠΏΠ»Π°Π½ΠΎΠ², ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ. ΠŸΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ Π²Ρ‹ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΡ€ΠΎΠΌΠ΅ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°. Если Π²Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Π³ΠΎΠ΄, Π²Ρ‹ сэкономитС 17% Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠ»Π°Π½Π΅.

План Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ Π₯Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅
ЯндСкс.Диск БСсплатно БСсплатно 10 Π“Π‘
БСсплатно + 100 Π“Π‘ $ 2.00 / мСсяц

20,40 долл. БША / год

100 Π“Π‘
БСсплатно + 1000 Π“Π‘ 10,00 Π΄ΠΎΠ»Π». БША Π² мСсяц

99,6 долл. БША в год

1000 Π“Π‘
БСсплатно + 3000 Π“Π‘ 30,00 Π΄ΠΎΠ»Π». БША Π² мСсяц

300,00 долл. БША / год

3000 Π“Π‘

ОбновлСниС Π΄ΠΎ ΠΏΠ»Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° Ρ‚Π°ΠΊΠΆΠ΅ прСдоставит Π²Π°ΠΌ доступ ΠΊ:

  • Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ ΠΆΡƒΡ€Π½Π°Π» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ для Ρ„Π°ΠΉΠ»ΠΎΠ²
  • Π‘Π΅Π· Ρ€Π΅ΠΊΠ»Π°ΠΌΡ‹
  • ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°
  • НСограничСнноС скачиваниС ΠΏΠΎ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΌ ссылкам

ЯндСкс.Диск Π½Π΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΏΠΎΠΆΠΈΠ·Π½Π΅Π½Π½Ρ‹Ρ… ΠΏΠ»Π°Π½ΠΎΠ² ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° ΠΈ Π½Π΅ дСшСв ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π΄Π΅ΡˆΠ΅Π²Ρ‹ΠΌΠΈ поставщиками ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π»ΡƒΡ‡ΡˆΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.


Для ΠΊΠΎΠ³ΠΎ это?

ЯндСкс — это компания, располоТСнная Π² России, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°Ρ‚ΡŒ Π΅Π΅ российским Google, ΠΈ это Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚Π°ΠΊ. Он управляСт ΠΊΡ€ΡƒΠΏΠ½Π΅ΠΉΡˆΠ΅ΠΉ поисковой систСмой Π² России с Π΄ΠΎΠ»Π΅ΠΉ Ρ€Ρ‹Π½ΠΊΠ° ΠΎΠΊΠΎΠ»ΠΎ 60% Π² этой странС. Если Π²Ρ‹ ΠΈΡ‰Π΅Ρ‚Π΅ достойноС ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ доступ государствСнных ΠΎΡ€Π³Π°Π½ΠΎΠ² БША ΠΊ вашим Ρ„Π°ΠΉΠ»Π°ΠΌ, Ρ‚ΠΎΠ³Π΄Π° ЯндСкс.Диск для тСбя. Π₯отя ΠΎΠ½ΠΈ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ярким ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ бСзопасного ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π΅ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Π˜ΠΌΠ΅ΠΉΡ‚Π΅ Π² Π²ΠΈΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ являСтся Π»ΡƒΡ‡ΡˆΠ΅ΠΉ Π² Π•Π²Ρ€ΠΎΠΏΠ΅ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… частях ΠΌΠΈΡ€Π°.


Удобство использования

Если Ρƒ вас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ учСтная запись Π½Π° ЯндСксС, Π·Π½Π°Ρ‡ΠΈΡ‚, Π²Ρ‹ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ЯндСкс.Диском. Если Π½Π΅Ρ‚, Ρ‚ΠΎ просто создайтС ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись, которая Π·Π°ΠΉΠΌΠ΅Ρ‚ ΠΏΠ°Ρ€Ρƒ ΠΌΠΈΠ½ΡƒΡ‚.

Π‘Π°ΠΌ интСрфСйс выглядит ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½ΠΎ ΠΈ Π½Π° самом Π΄Π΅Π»Π΅ вСсьма ΠΏΠΎΠ»Π΅Π·Π΅Π½.Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π² своих ΠΏΠ°ΠΏΠΊΠ°Ρ…, ΠΊΠ°ΠΊ Π½Π° своСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, ΠΈΠ»ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΆΠΈΠΌΠ°Ρ‚ΡŒ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Β«Π€ΠΎΡ‚ΠΎΒ», Β«ΠžΠ±Ρ‰ΠΈΠΉ доступ», Β«Π˜ΡΡ‚ΠΎΡ€ΠΈΡΒ» ΠΈ Β«ΠšΠΎΡ€Π·ΠΈΠ½Π°Β». ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ½ ΠΎΡ‡Π΅Π½ΡŒ ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²Ρ‹ΠΉ.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· 3 Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²ΠΈΠ΄ΠΎΠ² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°. Π‘Π°ΠΌΠ° навигация становится довольно простой, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ Π² Π²Π΅Ρ‰Π°Ρ….

ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ просмотр ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ²

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Office ΠΈ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ PDF-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ прямо ΠΈΠ· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ Office 365 Π² своСм ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠΌ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅.

ΠŸΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΌΡƒΠ·Ρ‹ΠΊΠΈ, ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ просмотр ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ просмотр Ρ„ΠΈΠ»ΡŒΠΌΠΎΠ² Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ прямо ΠΈΠ· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.


Бинхронизация Ρ„Π°ΠΉΠ»ΠΎΠ²

ΠšΠ»ΠΈΠ΅Π½Ρ‚ ЯндСкс.Диска доступСн для установки Π² систСмах Windows , macOS ΠΈ Linux .

Бинхронизация ΠΌΠ΅ΠΆΠ΄Ρƒ устройствами Π±Ρ‹Π»Π° сдСлана нСвСроятно быстро. Π’ Ρ‚ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° я Π½Π°Ρ‡Π°Π» Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ со своСго ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚, синхронизация Π½Π°Ρ‡Π°Π»Π°ΡΡŒ Π½Π° всСх Π΄Ρ€ΡƒΠ³ΠΈΡ… устройствах ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ.ВрСмя Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½ΠΎΠ΅, Π½ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ. Π­Ρ‚ΠΎ зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π³Π΄Π΅ Π²Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ΡΡŒ Π½Π° Π·Π΅ΠΌΠ½ΠΎΠΌ ΡˆΠ°Ρ€Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ЯндСкс Ρ€ΠΎΠ΄ΠΎΠΌ ΠΈΠ· России, Π° Π΅Π³ΠΎ сСрвСры располоТСны Π² России ΠΈ Ѐинляндии. Π’Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠ°ΠΊ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰.

Π€Π°ΠΉΠ»Ρ‹ хранятся Π² ΠΎΠ±Π»Π°ΠΊΠ΅ ( экономит Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ), Π½ΠΎ Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΡ… доступными для использования, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΡ… Π½Π° своСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ (Ρ‡Ρ‚ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ мСсто). По сути, это ЯндСкс.Дисковая вСрсия Π²Ρ‹Π±ΠΎΡ€ΠΎΡ‡Π½ΠΎΠΉ синхронизации .

ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π° Π½Π° ЯндСкс.ДискС — 50 Π“Π‘. Для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ Π±ΠΎΠ»Π΅Π΅ 10 Π“Π‘ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚.

Π’ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π° интСрСсная функция, которая позволяСт Π΄Π΅Π»Π°Ρ‚ΡŒ снимки экрана, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, Ρ‚Π°ΠΊΠΎΠΌ ΠΊΠ°ΠΊ Gyazo.

ЯндСкс.Диск Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΡŽ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π±Π»ΠΎΠΊΠΎΠ² , которая ускоряСт Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Ρ„Π°ΠΉΠ»ΠΎΠ², ΡƒΠΆΠ΅ находящихся Π² ΠΎΠ±Π»Π°ΠΊΠ΅ (ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ Ρ‚. Π”.).Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ ЯндСкс.Диск Π½Π΅ Π΄Π°Π΅Ρ‚ возмоТности ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ Π½Π° вашСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ°ΠΏΠΊΠ° Π±Ρ‹Π»Π° синхронизирована с ΠΎΠ±Π»Π°ΠΊΠΎΠΌ, Π²Π°ΠΌ придСтся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΅Π΅ Π½Π° Π²ΠΎΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΉ диск. Π’ ЯндСкс.


ОбмСн Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ

ОбмСн Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ с ЯндСксом ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ довольно интСрСсным. Он Π½Π΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ»Ρ‹, Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Π΅ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΌ, установка сроков годности ΠΈ Ρ‚. Π”. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ своими Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, создав ссылку, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π·Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ с Π΄Ρ€ΡƒΠ·ΡŒΡΠΌΠΈ ΠΏΠΎ элСктронной ΠΏΠΎΡ‡Ρ‚Π΅, Π² ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтях ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ QR-ΠΊΠΎΠ΄.

Π’Π°ΡˆΠ΅ΠΌΡƒ Π΄Ρ€ΡƒΠ³Ρƒ ΠΈΠ»ΠΈ ΠΊΠΎΠ»Π»Π΅Π³Π΅ Π½Π΅ трСбуСтся Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ Π½Π° ЯндСкс.ДискС для просмотра Ρ„Π°ΠΉΠ»ΠΎΠ². Однако ΠΎΠ½ понадобится Π΅ΠΌΡƒ для рСдактирования тСкстовых Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅. Π§Ρ‚ΠΎ ΠΆ, ΠΎΠ½ всСгда ΠΌΠΎΠΆΠ΅Ρ‚ просто ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ», ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π½Π° своСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π²Π°ΠΌ. Однако ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‰Π΅.

Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ссылку, которая Π½Π΅ позволяСт Π½ΠΈΠΊΠΎΠΌΡƒ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π΅Π΅ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.

Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΉ доступ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ людям ΠΈ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΈΠΌ Π΄Π²Π° уровня Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ:

  • ΠŸΠΎΠ»Π½Ρ‹ΠΉ доступ: позволяСт Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ
  • Волько Ρ‡Ρ‚Π΅Π½ΠΈΠ΅: Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ просмотр

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ²

Π€Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ удаляСтС, Π±ΡƒΠ΄ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π² вашСй ΠΊΠΎΡ€Π·ΠΈΠ½Π΅ 30 Π΄Π½Π΅ΠΉ , послС Ρ‡Π΅Π³ΠΎ ΠΎΠ½ΠΈ автоматичСски ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ с сСрвСра.Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ это ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚, Π²Ρ‹ большС Π½Π΅ смоТСтС ΠΈΡ… ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ. Π€Π°ΠΉΠ»Ρ‹ Π² ΠΊΠΎΡ€Π·ΠΈΠ½Π΅ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ мСсто Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, поэтому, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ мСсто, Π²Ρ‹, вСроятно, ΡƒΠ΄Π°Π»ΠΈΡ‚Π΅ ΠΈΡ… ΠΈΠ· ΠΊΠΎΡ€Π·ΠΈΠ½Ρ‹ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ.

ВСрсии Π²Π°ΡˆΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² хранятся Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ 14 Π΄Π½Π΅ΠΉ Π² бСсплатном ΠΏΠ»Π°Π½Π΅ ΠΈ Π΄ΠΎ 90 Π΄Π½Π΅ΠΉ Π² любом ΠΈΠ· ΠΏΠ»Π°Ρ‚Π½Ρ‹Ρ… ΠΏΠ»Π°Π½ΠΎΠ².


Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ

ЯндСкс.Диск ΠΈΠΌΠ΅Π΅Ρ‚ сСрвСры, располоТСнныС Π² Россия ΠΈ Ѐинляндия .

ЯндСкс.Диск ΠΎΡ‡Π΅Π½ΡŒ ΡΠΎΠΌΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΎ Π΅Π³ΠΎ бСзопасности. Они Π½Π΅ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΠ»ΠΈ Π½Π° ΠΌΠΎΠΈ элСктронныС письма ΠΈ Π½Π΅ размСстили Π½Π° своСм сайтС Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± этом. Они Π½Π΅ прСдоставили Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‚ΠΎΠΌ, Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Ρ‹ Π»ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ Π½Π° сСрвСрС ΠΈ ΠΊΠ°ΠΊΡƒΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρƒ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚. Если Π²Ρ‹ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅ΡΡŒ ΠΊ этому, Π²Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚Π΅ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΎ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ЯндСкса с этой Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠ³Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π·Π°Ρ‰ΠΈΡ‰Π°ΡŽΡ‚ наши Ρ„Π°ΠΉΠ»Ρ‹. Они Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ соотвСтствии трСбованиям (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, GDPR ΠΈΠ»ΠΈ HIPAA).

Они навСрняка Π½Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ с Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌ Ρ€Π°Π·Π³Π»Π°ΡˆΠ΅Π½ΠΈΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚Π΅ доступ ΠΊ вашим Ρ„Π°ΠΉΠ»Π°ΠΌ ΠΈ Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ pCloud ΠΈ Sync.com). Π­Ρ‚ΠΎ Π² сочСтании с ΠΈΡ… ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΊ Π½Π΅Ρ€Π°Π·Π³Π»Π°ΡˆΠ΅Π½ΠΈΡŽ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ бСзопасности Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Ρƒ мСня большиС подозрСния, поэтому я Π±Ρ‹ ΠΏΠΎΡ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π» Π²Π°ΠΌ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° наши 10 Π»ΡƒΡ‡ΡˆΠΈΡ… поставщиков ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰ ΠΈ Π½Π°ΠΉΡ‚ΠΈ бСзопасного поставщика ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ заботится ΠΎ вашСй ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. .

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄Π²ΡƒΡ…ΡΡ‚Π°ΠΏΠ½ΡƒΡŽ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ , хотя это повысит Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ вашСй ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Π΅Ρ‰Π΅ Π½Π° ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΊΡ‚ΠΎΡ€.


Онлайн-ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°

Если Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΌ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠΌ, Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΏΠΎΠΈΡΠΊΠ°Ρ‚ΡŒ Π² Π±Π°Π·Π΅ часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… вопросов. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Ρ‚Π°ΠΌ довольно ΠΌΠ½ΠΎΠ³ΠΎ, Π½ΠΎ я Π½Π΅ ΠΌΠΎΠ³Ρƒ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ.

ВозмоТности связи ΠΎΡ‡Π΅Π½ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Ρ‹, Π΄Π°ΠΆΠ΅ ΠΈΡ… контактная страница ΠΏΠΎΡ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ Π½Π° русском языкС.НавСрноС, просто Π·Π°Π±Ρ‹Π»ΠΈ пСрСвСсти.

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ с ΠΏΠ»Π°Ρ‚Π½Ρ‹ΠΌΠΈ Ρ‚Π°Ρ€ΠΈΡ„Π½Ρ‹ΠΌΠΈ ΠΏΠ»Π°Π½Π°ΠΌΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ. НСт возмоТности ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ с Π½ΠΈΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· Ρ‡Π°Ρ‚ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ½ΠΈΡ‚ΡŒ ΠΈΠΌ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ.


Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности


Π˜Π½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Word, Excel ΠΈ Powerpoint

Как ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Π΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°, ΠΎΠ½ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, поэтому Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ всС эти Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Π½Π° свой ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΈΡ… рСдактирования. ВмСсто этого Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ просто ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅. Достаточно полСзная функция, Ссли чСстно.


ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Smart TV для LG

Если Ρƒ вас Ρ‚Π΅Π»Π΅Π²ΠΈΠ·ΠΎΡ€ LG Smart TV, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ со своСго ЯндСкс.Диска Ρ‡Π΅Ρ€Π΅Π· ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ЯндСкс.Диск для Smart TV. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²Π°ΠΌ просто Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΉΡ‚ΠΈ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ LG, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΈ Π²ΠΎΠΉΡ‚ΠΈ ΠΏΠΎΠ΄ своим ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΌ.


МобильноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅

ЯндСкс.Диск ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π° Android ΠΈ iOS . На ΠΌΠΎΠ΅ΠΌ iPhone 6s ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠ»Π°Π²Π½ΠΎ. Π’ этом Π½Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ особСнного, Π½ΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ‚ своС Π΄Π΅Π»ΠΎ.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΉ, Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ Π·Π°Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, Ρ‡Ρ‚ΠΎ вСсьма ΠΏΠΎΠ»Π΅Π·Π½ΠΎ. Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ доступными для вас, Π΄Π°ΠΆΠ΅ ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π½Π΅ Π² сСти, Ρ‡Ρ‚ΠΎ Π·Π°ΠΉΠΌΠ΅Ρ‚ Ρ‡Π°ΡΡ‚ΡŒ памяти вашСго Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°.


Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ЯндСкс.Диск — Π² Ρ†Π΅Π»ΠΎΠΌ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎΠΉ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΉ сСрвис. Π¦Π΅Π½Ρ‹ ΠΈ ΠΏΠ»Π°Π½Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ срСдними ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΌΠΈ сСрвисами. Π­Ρ‚ΠΎ, бСзусловно, Π½Π΅ Π±Π΅Π· нСдостатков. Π£ Π½Π΅Π³ΠΎ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ синхронизации (синхронизация Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π±Π»ΠΎΠΊΠΎΠ² ΠΈ синхронизация любой ΠΏΠ°ΠΏΠΊΠΈ) ΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ , ΠΊΠΎΠ³Π΄Π° Π΄Π΅Π»ΠΎ Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎ совмСстного использования Ρ„Π°ΠΉΠ»ΠΎΠ² .НСизвСстная Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ мСня Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ бСспокоит ΠΈ заставляСт ΠΎΠΏΠ°ΡΠ°Ρ‚ΡŒΡΡ ЯндСкс.Диска. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ Π½Π° Ρ‚ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ большой ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΠΊΠ°ΠΊ ЯндСкс. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, это качСствСнный сСрвис, сСрвСры ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ находятся Π² России ΠΈ Ѐинляндии, Π° это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π·Π°ΠΏΠ°Π΄Π½Ρ‹Ρ… агСнтств Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ доступа ΠΊ вашим Ρ„Π°ΠΉΠ»Π°ΠΌ. Если Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ, становится ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Π΅ сСрвисы хранСния. ΠŸΠΎΠΉΠ΄ΠΈΡ‚Π΅, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ нСсколько, это Π½Π΅ Ρ‚ΠΎΡ‚, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π²Π°ΠΌ слСдуСт ΡΠΎΠ³Π»Π°ΡˆΠ°Ρ‚ΡŒΡΡ.



НадСюсь, ΠΌΡ‹ рассмотрСли всС, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π·Π½Π°Ρ‚ΡŒ ΠΎ ЯндСксС.Диск Π² этом ΠΎΠ±Π·ΠΎΡ€Π΅ ЯндСкс.Диска. Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ вопросы Π±Π΅Π· ΠΎΡ‚Π²Π΅Ρ‚Π°, Π½Π΅ ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈΡ… Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² Π½ΠΈΠΆΠ΅, ΠΈ я ΠΎΡ‚Π²Π΅Ρ‡Ρƒ Π½Π° Π½ΠΈΡ… Π² блиТайшСС врСмя!

ЯндСкс Диск — ArchWiki

ЯндСкс Диск — это бСсплатноС ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, созданноС ЯндСксом, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ доступ ΠΊ вашим фотографиям, Π²ΠΈΠ΄Π΅ΠΎ ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌ с любого устройства, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ.
ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠ°Ρ консоль ЯндСкс Диск позволяСт:

  • ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΠ°ΠΏΠΊΠΈ с Диском,
  • ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Π΅ ссылки Π½Π° Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΠ°ΠΏΠΊΠΈ,
  • Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΏΠ°ΠΏΠΎΠΊ.

Установка

яндСкс-диск AUR ΠšΠ»ΠΈΠ΅Π½Ρ‚ для Linux ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ установлСн ΠΈΠ· AUR. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ это ΠΊΠ»ΠΈΠ΅Π½Ρ‚ CLI — Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ для Π½Π΅Π³ΠΎ Π½Π΅Ρ‚ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ графичСского интСрфСйса. ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ см. # ΠΠ΅ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹.

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ прокси, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ, Π²Π²Π΅Π΄ΠΈΡ‚Π΅

 $ настройка яндСкс-диска
 

Бинхронизация начнСтся послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ этого шага, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ЯндСкс Диск.

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹

Π£ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ°ΠΏΠΊΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ любого Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° ΠΈΠ»ΠΈ консоли.

ΠŸΠΎΠ»Π½Ρ‹ΠΉ список ΠΊΠΎΠΌΠ°Π½Π΄ доступСн Π² man yandex-disk ΠΈΠ»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ

 $ яндСкс-диск --help
 

Π’ΠΎΡ‚ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² использования:

  • setup — Запуск мастСра установки.
  • start — Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ Π΄Π΅ΠΌΠΎΠ½ ΠΈ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΏΠ°ΠΏΠΎΠΊ. Π’Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС синхронизации записываСтся Π² Ρ„Π°ΠΉΠ» Β«.sync / statusΒ».
  • status — ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ статус Π΄Π΅ΠΌΠΎΠ½Π°: статус синхронизации, ошибки, Π½Π΅Π΄Π°Π²Π½ΠΎ синхронизированныС Ρ„Π°ΠΉΠ»Ρ‹, статус дискового пространства.Если отобраТаСтся ЀАЙЛ, Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ статус этого Ρ„Π°ΠΉΠ»Π°.
  • token — ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½ OAuth, Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ — /.config/yandex-disk/passwd). Если ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ -p PASSWORD ΠΈΠ»ΠΈ —password PASSWORD Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ, Ρ‚ΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π²Π²Π΅Π΄Π΅Π½ ΠΈΠ· STDIN.
  • синхронизация — ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ ΠΈ Π²Ρ‹ΠΉΡ‚ΠΈ ΠΈΠ· систСмы (Ссли Π΄Π΅ΠΌΠΎΠ½ Π·Π°ΠΏΡƒΡ‰Π΅Π½, Π΄ΠΎΠΆΠ΄ΠΈΡ‚Π΅ΡΡŒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ синхронизации).
  • ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ — ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» / ΠΏΠ°ΠΏΠΊΡƒ общСдоступными ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ссылку Π½Π° STDOUT.Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ скопирован Π² ΠΏΠ°ΠΏΠΊΡƒ синхронизации. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ —overwrite, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ элСмСнты.
  • ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ — удаляСт ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΉ доступ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ / ΠΏΠ°ΠΏΠΊΠ΅.

ΠΠ΅ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹

Π‘ΠΌ. Π’Π°ΠΊΠΆΠ΅

http://help.yandex.com/disk/cli-clients.xml

Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ЯндСкс.Диск — бСсплатно ΠžΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ β€’ MintGuide.Org

Π€Π°ΠΉΠ» , сСрвис хранСния , доступный с любого устройства с ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΊ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ.ПослС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ диска Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ 11 Π“Π‘ .

Полная синхронизация Ρ‡Π΅Ρ€Π΅Π· Windows, OS X, iPhone, Android, Windows Phone, Linux !!!

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ДисковоС пространство, просто пригласив Π΄Ρ€ΡƒΠ·Π΅ΠΉ Π² ЯндСкс.Диск. Π’Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ +0,5 Π“Π‘, Π° ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½Π½Ρ‹Π΅ люди ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ +1 Π“Π‘.

Магазин

Π€Π°ΠΉΠ»Ρ‹ Π½Π° ЯндСкс.ДискС Π½Π΅ ΠΏΠΎΡ‚Π΅Ρ€ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΠΎΠΌΠΊΠ΅ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π° ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Π£ вас Π±ΡƒΠ΄Π΅Ρ‚ достаточно мСста для хранСния самых Ρ†Π΅Π½Π½Ρ‹Ρ… Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΉ ΠΈ Π²Π°ΠΆΠ½Ρ‹Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

Доступ

Доступ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ ЯндСкс.Диска ΠΈΠ· любой Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΌΠΈΡ€Π°, всС, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ, это ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ.

ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ

ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Π½Π° ЯндСкс.ДискС с сСмьСй, ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ·ΡŒΡΠΌΠΈ. Π’Ρ‹ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚Π΅, ΠΊΡ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ доступ ΠΊ вашим Ρ„Π°ΠΉΠ»Π°ΠΌ.

API

Π˜Π½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ ЯндСкс.Диск Π² собствСнноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ нашСго ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ совмСстимого с WebDAV API.

Установка ЯндСкс.Диска Π² Linux Mint (Ubuntu)

Для Π½Π°Ρ‡Π°Π»Π° Π’Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² сСрвисС.

Π—Π°Ρ‚Π΅ΠΌ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΎΠ΄Π½Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

sudo echo Β«deb http://repo.yandex.ru/yandex-disk/deb/ stable mainΒ» | sudo tee -a /etc/apt/sources.list.d/yandex.list> / dev / null && wget http://repo.yandex.ru/yandex-disk/YANDEX-DISK-KEY.GPG -O- | sudo apt-key add — && sudo apt-get update && sudo apt-get install -y yandex-disk

Или установка с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ apt-get:

sudo echo Β«deb http://repo.yandex.ru / yandex-disk / deb / stable main Β»>> / etc / apt / sources.list.d / yandex.listsudo apt-get updatesudo apt-get install yandex-disk

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΏΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ссылкС Π½ΠΈΠΆΠ΅:

Как Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ЯндСкс.Диск

ПослС установки запуститС установку ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ setup:

  1. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ имя ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° для хранСния локальной ΠΊΠΎΠΏΠΈΠΈ Диска. Если ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ имя пустым, Π² домашнСм ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Π±ΡƒΠ΄Π΅Ρ‚ создана ΠΏΠ°ΠΏΠΊΠ° ЯндСкс.Диск.
  2. Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΈ прокси-сСрвСр (Π΄Π° / Π½Π΅Ρ‚).
  3. Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅, Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΏΡ€ΠΈ запускС (Π΄Π° / Π½Π΅Ρ‚).
  4. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ вашС имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° ЯндСксС.
  5. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π½Π° ЯндСксС.
  6. ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ мастСр Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ, Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ~ / .config / yandex-disk Π±ΡƒΠ΄Π΅Ρ‚ создан Ρ„Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ config.cfg .

На этом установка Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ просто запуститС ЯндСкс.Диск с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ статус ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ Π±Ρ‹Π»ΠΈ синхронизированы послСдними, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Для Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… настроСк ΠΈ получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… свСдСний ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ ΠΏΠΎ ссылкС.

Π£Π΄Π°Ρ‡ΠΈ !!!

Π‘Π°ΠΉΡ‚ ΠΏΠ΅Ρ€Π΅ΡˆΠ΅Π» Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ, ΠΏΠΎΠΌΠΎΠ³ΠΈΡ‚Π΅ ΠΌΠ½Π΅ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ошибки, ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ ΠΌΠ½Π΅ своС ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅, Π²Ρ‹Π΄Π΅Π»ΠΈΠ² этот тСкст ΠΈ Π½Π°ΠΆΠ°Π² Ctrl + Enter .

ЯндСксдиск

YANDEX DΔ°SK 2019 SÜPER TÜRK Δ°FŞA (LΔ°NK AΓ‡IKLMADA 2020)

LΔ°NK: https: // tr.ссылка / vK2Vg
LΔ°NK: https://tr.link/vK2Vg
LΔ°NK: https://tr.link/vK2Vg

яндСкс диск Π°Ρ€ΡˆΠΈΠ²,
ссылка Π½Π° яндСкс-диск,
яндСкс диск nasıl kullanılır mobil,
яндСкс диск arşiv mega,
яндСкс диск dev arşiv,
яндСкс диск ünlü arşiv,
яндСкс диск видСо yükleme,
яндСкс диск arşiv yeni,
яндСкс диск arşiv fotoğraf,
яндСкс диск Π°Ρ€ΡˆΠΈΠ² 50 Π³Π±,
яндСкс диск bağlantı engellendi sorunu,
яндСкс диск başak karahan,
яндСкс диск bilgisayardan kaldırma,
яндСкс диск büyük arşiv,
яндСкс диск бСдава алан,
яндСкс диск bârü,
яндСкс диск bağlantı engellendi hatası,
яндСкс диск boyutu arttırma,
sıfır bir яндСкс диск,
яндСкс диск sΔ±fΔ±r bir ссылка,
диск яндСкса Π°ΠΌΠ°Π½Π΄Ρ‹ Ρ‡Π΅Ρ€Π½ΠΈ,
Ρ„ΠΎΡ‚ΠΎΡˆΠΎΠΏ cs6 яндСкс диск,
яндСкс диск çâp kutusundan silinen dosyaları geri getirme,
яндСкс диск Π΄Π΅Ρ€,
яндСкс диск dosya yükleme,
яндСкс диск Π΄Π΅Π½ дося ΠΈΠ½Π΄ΠΈΡ€ΠΌΠ΅,
яндСкс диск дося ΠΈΠ½Π΄ΠΈΡ€ΠΌΠ΅,
яндСкс диск depolama alanı,
яндСкс диск dosya indirme limiti aşıldı,
яндСкс диск Π΄ΠΈΠ»Π°Π½ Π΄Π΅Ρ€Π΅,
яндСкс диск dil değiştirme,
яндСкс диск Π΅ насыл ΠΊΠ°ΠΉΡ‹Ρ‚ ΠΎΠ»ΡƒΠ½ΡƒΡ€,
яндСкс диск Π΅ ΠΊΠΈΡ‚Π°ΠΏ,
яндСкс диск epub kitap,
яндСкс диск engellendi,
Элвис ΠšΠ°ΠΉΠ½Π΅Ρ€Π°Ρ€ яндСкс диск,
en iyi яндСкс диск,
диск яндСкс evonmoss,
яндСкс диск fotoğraf arşivi,
яндСкс диск Ρ„ΠΎΡ‚ΠΎ Π°Ρ€ΡˆΠΈΠ²,
яндСкс диск Ρ„ΠΈΠ»ΡŒΠΌ,
яндСкс диск fotoğraf yükleme,
яндСкс диск Ρ„ΠΈΠ»ΡŒΠΌ Π°Ρ€ΡˆΠΈΠ²ΠΈ,
яндСкс диск Ρ„ΠΈΠ»ΡŒΠΌ Π°Ρ€ΡˆΠΈΠ²ΠΈ 2019,
яндСкс диск Ρ„ΠΈΠ»ΡŒΠΌ Π°Ρ€ΡˆΠΈΠ²ΠΈ 2018,
яндСкс диск fotoğraf silme,
яндСкс диск Ρ„ΠΈΠ»ΡŒΠΌ Π°Ρ€ΡˆΠΈΠ²ΠΈ 2017,
яндСкс диск Ρ„ΠΈΠ»ΡŒΠΌ indirme,
яндСкс диск gb arttırma,
яндСкс диск Π³ΠΈΡ€ΠΈΡˆ,
яндСкс диск geçmişi silme,
яндСкс диск giriş yap,
яндСкс диск geçmiş temizleme,
яндСкс диск güncel,
яндСкс диск хадис,
яндСкс диск hızlı indirme,
яндСкс диск hesap açma,
яндСкс диск hesabımı unuttum,
яндСкс диск https yadi sk d l3bf3rxf3u2hdp,
яндСкс диск hızlı dosya yükleme,
яндСкс диск hesap aç,
яндСкс диск hesabı nasıl açılır,
яндСкс диск hande,
яндСкс диск indirme,
яндСкс диск indirme nasıl,
яндСкс диск indirme limiti aşıldı sorunu,
яндСкс диск indirme sınırı,
яндСкс диск indir,
яндСкс диск inci,
яндСкс диск indirme sorunu,
яндСкс диск ile dosya paylaşımı,
яндСкс диск ingilizce kitaplar,
яндСкс диск kayıt olma,
яндСкс диск ΠΊΠ°Π»Π΄Ρ‹Ρ€ΠΌΠ°,
яндСкс диск ΠΊΠΈΡ‚Π°ΠΏ Π°Ρ€ΡˆΠΈΠ²,
яндСкс диск кайдСдилСмСди,
яндСкс диск kitap nasıl indirilir,
яндСкс диск ΠΊΠΈΡ‚Π°ΠΏ,
яндСкс диск kayıt,
яндСкс диск kapasitesi arttırma hilesi,
яндСкс диск кайдол,
яндСкс диск kayıt olmuyor,
яндСкс ссылка Π½Π° диск 2019,
яндСкс диск лило,
яндСкс ссылка Π½Π° диск aΓ§ma,
яндСкс диск линки,
яндСкс ссылка Π½Π° диск behzat Γ§,
яндСкс ссылка Π½Π° диск paylaşımΔ±,
яндСкс ссылка Π½Π° диск Paylaşma,
яндСкс диск ΠΌΠ΅Π³Π° Π°Ρ€ΡˆΠΈΠ²,
яндСкс диск мобил,
яндСкс диск müzik arşivi 2019,
яндСкс диск müzik arşivi 2018,
яндСкс диск мюзик,
яндСкс диск müzik arşivi,
яндСкс диск mp3 arşivi,
яндСкс диск merve sanay,
яндСкс диск мСга,
melek âzçağan яндСкс диск,
яндСкс диск nedir nasıl kullanılır,
яндСкс диск nasıl kullanılır,
яндСкс диск nasıl indirilir,
яндСкс диск nasıl kullanılır telefon,
яндСкс диск nasıl видСо indirilir,
яндСкс диск ne işe yarar,
яндСкс диск nilay hoca,
яндСкс диск nasıl kullanılır ios,
яндСкс диск oluştur,
яндСкс диск oyun arşivi,
яндСкс диск otomatik yükleme,
яндСкс диск âznur garip,
яндСкс диск âzellikleri,
duru ânver яндСкс диск,
яндСкс диск для ΠΊΠ°Π·Π°Π½ΠΌΡ‹,
яндСкс диск paylaşım,
яндСкс диск pdf,
яндСкс диск ΠΏΡ€ΠΎΠΌΠΎΡΡŒΠΎΠ½ ΠΊΠΎΠ΄Ρƒ 2019,
яндСкс диск Paylaşma,
яндСкс диск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° arşivi,
яндСкс диск pdf Π°Ρ€Ρ…ΠΈΠ²,
яндСкс диск paylaşımları,
ΠΏΡ€ΠΎΠΌΠΎΠΊΠΎΠ΄ яндСкс диска бСсплатно,
яндСкс диск pdf ΠΊΠΈΡ‚Π°ΠΏ Π°Ρ€ΡˆΠΈΠ²ΠΈ,
яндСкс диск rusça hata,
яндСкс диск rar dosyası açma,
ΠΎΠ±Π·ΠΎΡ€ яндСкс диска,
яндСкс диск русса,
яндСкс диск сору,
яндСкс диск silme,
яндСкс диск sınır aşıldı,
яндСкс диск союнма,
яндСкс диск silinen fotoğrafları geri getirme,
яндСкс диск sıfır bir,
диск яндСкс merve sanay,
яндСкс диск şifremi unuttum,
яндСкс диск şifre değiştirme,
яндСкс диск şifre kırma,
яндСкс диск Ρ‚Ρ‹Ρ‚,
яндСкс диск Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½,
яндСкс диск türkçe yapma,
яндСкс диск Ρ‚Π΅Π½ дося ΠΈΠ½Π΄ΠΈΡ€ΠΌΠ΅,
яндСкс диск Ρ‚Π΅ ΠΊΠΈΡ‚Π°ΠΏ Π°Ρ€Π°ΠΌΠ°,
яндСкс диск Ρ‚Ρ‹Ρ‚ Π°ΠΉΡ‚ pdf,
яндСкс диск toplu indirme,
ссылка Π½Π° яндСкс-диск Π½Π° Ρ‚ΡŽΡ€ΠΊ,
яндСкс диск Ρ‚Π°ΠΉΡ‚,
яндСкс диск uygulaması,
яндСкс Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° диска hΔ±zΔ±,
API Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ яндСкс диска,
яндСкс диск ücretsiz depolama alanı,
яндСкс диск üye olmadan indirme,
яндСкс диск ücretsiz alan,
яндСкс диск ünlüler,
яндСкс диск видСо indirme,
яндСкс диск видСо açılmıyor,
яндСкс диск Π²ΠΈΠ΄Π΅ΠΎ ΠΈΠ½Π΄ΠΈΡ€,
яндСкс диск видСо indirici,
яндСкс диск видСо nasıl indirilir,
яндСкс диск вк,
яндСкс диск видСо излСмС,
яндСкс диск Π²ΠΈΠ΄Π΅ΠΎ Π°Ρ€Ρ…ΠΈΠ²,
яндСкс диск Π²ΠΈΠ΄Π΅ΠΎ Π°Ρ€Π°ΠΌΠ°,
яндСкс диск yabancı arşiv,
яндСкс диск ΠΉΠ΅Π½ΠΈ Π°Ρ€ΡˆΠΈΠ²,
яндСкс диск yeterli alan yok,
яндСкс диск yeterli alan yok hatası,
яндСкс диск яди.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *