Разное

Шортенер: Paste the URL to be shortened

10.08.2021

Содержание

Google url shortener — Английский

Английский

In order to obfuscate the malicious link within the spam sent to the intruders the Google URL Shortener service, which allows saving the addresses in the form «http://goo.gl/», is used.

Русский

Для того чтобы скрыть вредоносные ссылки в рассылаемом спаме злоумышленники использовали сервис Google URL Shortener, благодаря которому адреса начинались с «http://goo.gl/».

Последнее обновление: 2018-02-21
Частота использования: 1

Качество:

Shortener VLWI Stainless Grade 6

Stainless steel shortener for shortening of stainless steel chains, extremely convenient in applications, in assembled systems or for retrofitting.

Preferred areas of application for the VLWI shortener are water and wastewater applications and the product can also be used in connection with chemicals and food products; however, restrictions will apply and we recommend that you contact the manufacturer for advice prior to exposing the product to such use.

Material: VLWI 5/6 — 7/8 1.4571 (shortener) and 1.4404 (BWI) / AISI 316 TI (shortener) and AISI 316 L (BWI).

VLWI 10 — 16 1.4571 (shortener) and 1.4462 (BWI) / AISI 316 TI (shortener) and AISI 318 LN (BWI).

  • Marking: CE-marked
  • Finish: Pickled and blasted.
  • Safety factor: 4:1
  • Класс: 6
показать рисунок

Currently this product cannot be added to an online quote. Please contact us directly for enquires.

Download CAD

Description

To download CAD files, you must provide a valid e-mail address

Создание коротких ссылок с помощью Django и GraphQL

Автор выбрал Girls Who Code для получения пожертвования в рамках программы Write for DOnations.

Введение

GraphQL — это стандарт API с открытым исходным кодом, созданный Facebook в качестве альтернативы REST API. В отличие от REST API, GraphQL использует типизированную систему для определения структуры данных, где вся отправляемая и получаемая информация должна соответствовать предварительно заданной схеме.

Также он подразумевает использование одной конечной точки для любых коммуникаций вместо использования нескольких URL-адресов для разных ресурсов, а также позволяет решить проблему оверфетчинга, возвращая только запрошенные клиентом данные, генерируя более компактные и понятные ответы.

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

bit.ly.

Поскольку GraphQL является независимой от языка технологией, она реализуется поверх самых разных языков и фреймворков. Здесь вы будете использовать универсальный язык программирования Python, веб-фреймворк Django и библиотеку Graphene-Django в качестве имплементации Python для GraphQL с конкретными интеграциями для Django.

Предварительные требования

  • Для продолжения выполнения этого руководства вам потребуется версия Python 3.5 или выше, установленная на вашем компьютере для разработки. Для установки Python воспользуйтесь нашим руководством Установка и настройка локальной среды программирования для Python 3 для вашей ОС. Обязательно создайте и запустите виртуальную среду; чтобы выполнять указания этого обучающего руководства, вы можете использовать директорию проекта

    shorty.

  • Желательно наличие базового знания Django, но это необязательно. Если вам интересно, вы можете воспользоваться этой серией материалов о разработке в Django, созданной сообществом DigitalOcean.

Шаг 1 — Настройка проекта Django

На этом шаге вы выполните установку всех необходимых инструментов для приложения и настроите ваш проект Django.

После создания директории проекта и запуска вашей виртуальной среды, как указано в предварительных условиях, установите необходимые пакеты с помощью

pip, диспетчера пакетов Python. В этом обучающем руководстве используется версия Django 2.1.7 и версия Graphene-Django 2.2.0 или выше:

  • pip install "django==2.1.7" "graphene-django>==2.2.0"

Теперь у вас есть все необходимые инструменты. Далее вам необходимо создать проект Django, используя команду django-admin. Проект представляет собой стандартный шаблон Django по умолчанию, т. е. набор папок и файлов со всем необходимым для начала разработки веб-приложения. В этом случае вы можете вызвать ваш проект

shorty и создать его в текущей папке, указав в конце .:

  • django-admin startproject shorty .

После создания вашего проекта выполните запуск миграции Django. Эти файлы содержат код Python, сгенерированный Django, и несут ответственность за изменение структуры приложения в соответствии с моделями Django. Изменения могут, например, включать создание таблицы. По умолчанию Django имеет собственный набор миграций, отвечающий за такие подсистемы, как аутентификация Django, поэтому необходимо выполнить их с помощью следующей команды:

Эта команда использует интерпретатор Python для вызова скрипта Django с именем manage.py, который отвечает за управление различными аспектами вашего проекта, например, созданием приложений или запуском миграции.

Результат будет выглядеть примерно следующим образом:

Output

Operations to perform: Apply all migrations: admin, auth, contenttypes, sessions Running migrations: Applying contenttypes.0001_initial... OK Applying auth.0001_initial... OK Applying admin.0001_initial... OK Applying admin.0002_logentry_remove_auto_add... OK Applying admin.0003_logentry_add_action_flag_choices... OK Applying contenttypes.0002_remove_content_type_name... OK Applying auth.0002_alter_permission_name_max_length... OK Applying auth.0003_alter_user_email_max_length.
.. OK Applying auth.0004_alter_user_username_opts... OK Applying auth.0005_alter_user_last_login_null... OK Applying auth.0006_require_contenttypes_0002... OK Applying auth.0007_alter_validators_add_error_messages... OK Applying auth.0008_alter_user_username_max_length... OK Applying auth.0009_alter_user_last_name_max_length... OK Applying sessions.0001_initial... OK

Когда база данных Django будет готова, запустите локальный сервер разработки:

  • python manage.py runserver

Это даст нам следующее:

Output

Performing system checks... System check identified no issues (0 silenced). March 18, 2020 - 15:46:15 Django version 2.1.7, using settings 'shorty.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CONTROL-C.

Эта команда будет отменять запрос в вашем терминале и запускать сервер.

Перейдите на страницу http://127. 0.0.1:8000 в вашем браузере. Вы увидите следующую страницу:

Чтобы остановить сервер и вернуться к терминалу, нажмите CTRL+C. Когда вам потребуется получить доступ к браузеру, убедитесь, что предыдущая команда запущена.

Далее мы закончим выполнение этого шага, активировав библиотеку Django-Graphene в проекте. Django использует концепцию app, т. е. веб-приложения с конкретной ответственностью. Проект включает одно или несколько приложений. Откройте файл shorty/settings.py в текстовом редакторе по вашему выбору. В этом обучающем руководстве мы будем использовать vim:

Файл settings.py управляет всеми параметрами вашего проекта. Внутри файла найдите запись INSTALLED_APPS и добавьте строку 'graphene_django':

shorty/shorty/settings.py

...
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib. contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'graphene_django',
]
...

Это добавление указывает Django, что вы будете использовать приложение с именем graphene_django, которое вы установили на шаге 1.

Добавьте внизу файла следующую переменную:

shorty/shorty/settings.py

...
GRAPHENE = {
    'SCHEMA': 'shorty.schema.schema',
}

Последняя переменная указывает на вашу основную схему, которую вы создадите позже. В GraphQL схема содержит все типы объектов, такие как ресурсы, запросы и мутации. Вы можете рассматривать ее как документацию, которая представляет все данные и функционал, доступный в вашей системе.

После внесения изменений сохраните и закройте файл.

Вы закончили настройку проекта Django. На следующем шаге мы создадим приложение Django и модели.

Шаг 2 — Настройка приложения Django и моделей

Платформа Django обычно включает один проект и несколько приложений или app. App описывает набор функций внутри проекта, и при правильной разработке может повторно использоваться в других проектах Django.

На этом шаге мы создадим приложение shortener​​​, которое отвечает за фактическое укорачивание URL-адреса. Для создания базового каркаса введите следующую команду в терминале:

  • python manage.py startapp shortener

Здесь вы использовали параметры startapp app_name​​, которые указывают manage.py​​​ создать приложение с именем shortener.

Чтобы завершить процесс создания приложения, откройте файл shorty/settings.py.

Добавьте имя приложения в ту же запись INSTALLED_APPS, которую вы изменили ранее:

shorty/shorty/settings.py

...
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django. contrib.messages',
    'django.contrib.staticfiles',
    'graphene_django'
    'shortener',
]
...

Сохраните и закройте файл.

После добавления shortener в shorty/settings.py вы можете перейти к созданию моделей вашего проекта. Модели — одна из ключевых функций в Django. Они используются для представления базы данных в используемом в Python образе, что позволяет управлять, запрашивать и сохранять данные с помощью кода Python.

Прежде чем открыть файл models.py для внесения изменений, в этом обучающем руководстве мы разместим обзор изменений, которые вы вносите.

Ваш файл модели —shortener/models.py — будет содержать следующее содержание, после того как вы заменили существующий код:

shorty/shortener/models.py

from hashlib import md5

from django.db import models

Здесь вы импортируете требуемые пакеты, необходимые вашему коду. Вам нужно добавить строку from hashlib import md5 в верхней части для импорта стандартной библиотеки, которая будет использоваться для создания хэша URL-адреса. Строка from django.db import models — это элемент Django для создания моделей.

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

Обратите внимание, что MD5 имеет проблемы с коллизиями, поэтому рекомендуется избегать ее использования в производственной среде.

Далее вам необходимо добавить модель с именем URL и следующими полями:

  • full_url: URL для сокращения.
  • url_hash: краткий хэш, представляющий полный URL.
  • clicks: сколько раз был использован короткий URL.
  • created_at: дата и время создания URL.

shorty/shortener/models.py

...

class URL(models.Model):
    full_url = models.URLField(unique=True)
    url_hash = models. URLField(unique=True)
    clicks = models.IntegerField(default=0)
    created_at = models.DateTimeField(auto_now_add=True)

Вы сгенерируете url_hash, применив алгоритм хеширования MD5 для поля full_url​​​ и используя только первые 10 символов, которые возвращает метод save() модели, выполняемый каждый раз, когда Django сохраняет запись в базе данных. Кроме того, инструменты для сокращения URL-адреса обычно отслеживают, сколько раз была использована ссылка. Вы можете вызвать для этого метод clicked()​​, когда URL используется пользователем.

Упомянутые операции будут добавлены в вашу модель URL с помощью этого кода:

shorty/shortener/models.py

...

    def clicked(self):
        self.clicks += 1
        self.save()

    def save(self, *args, **kwargs):
        if not self.id:
            self.url_hash = md5(self.full_url.encode()).hexdigest()[:10]

        return super().save(*args, **kwargs)

Теперь, когда вы просмотрели код, откройте файл shortener/models. py:

Замените код на следующий:

shorty/shortener/models.py

from hashlib import md5

from django.db import models


class URL(models.Model):
    full_url = models.URLField(unique=True)
    url_hash = models.URLField(unique=True)
    clicks = models.IntegerField(default=0)
    created_at = models.DateTimeField(auto_now_add=True)

    def clicked(self):
        self.clicks += 1
        self.save()

    def save(self, *args, **kwargs):
        if not self.id:
            self.url_hash = md5(self.full_url.encode()).hexdigest()[:10]

        return super().save(*args, **kwargs)

Обязательно сохраните и закройте файл.

Для применения этих изменений в базе данных вам потребуется создать миграции, запустив следующую команду:

  • python manage.py makemigrations

Результат будет выглядеть следующим образом:

Output

Migrations for 'shortener': shortener/migrations/0001_initial. py - Create model URL

Затем выполните миграции:

В своем терминале вы увидите следующее:

Output

Operations to perform: Apply all migrations: admin, auth, contenttypes, sessions, shortener Running migrations: Applying shortener.0001_initial... OK

Теперь, когда вы настроили модели, на следующем шаге мы создадим конечную точку GraphQL и запрос.

Шаг 3 — Создание запросов

Архитектура REST предоставляет разные ресурсы в разных конечных точках, каждый из которых содержит четко определенную структуру данных. Например, вы можете получить список пользователей в /api/users, который всегда ожидает одни и те же поля. GraphQL, с другой стороны, имеет одну конечную точку для всех взаимодействий и использует запросы для доступа к данным. Главное, и самое ценное, различие заключается в том, что вы можете использовать запрос для получения всех ваших пользователей с помощью одного запроса.

Начните с создания запроса для получения всех URL. Вам потребуется несколько вещей:

  • Тип URL, который привязан к ранее определенной модели.
  • Оператор запроса с именем urls.
  • Метод для обработки вашего запроса, т. е. получения всех URL из базы данных и их возвращения клиенту.

Создайте новый файл shortener/schema.py:

Начнем с добавления оператора import Python:

shorty/shortener/schema.py

import graphene
from graphene_django import DjangoObjectType

from .models import URL

Первая строка импортирует основную библиотеку graphene, которая содержит базовые типы GraphQL, например List. DjangoObjectType — это вспомогательный метод для создания определения схемы из любой модели Django, а третья строка импортирует ранее созданную модель URL.

Создайте новый тип GraphQL для модели URL, добавив следующие строки:

shorty/shortener/schema. py

...
class URLType(DjangoObjectType):
    class Meta:
        model = URL

В заключение добавьте эти строки для создания типа запроса для модели URL:

shorty/shortener/schema.py

...
class Query(graphene.ObjectType):
    urls = graphene.List(URLType)

    def resolve_urls(self, info, **kwargs):
        return URL.objects.all()

Этот код создает класс Query с одним полем urls, который представляет собой список с ранее определенным типом URLType. При обработке запроса с помощью метода resolve_urls вы возвращаете все URL, сохраненные в базе данных.

Полное содержание файла shortener/schema.py показано здесь:

shorty/shortener/schema.py

import graphene
from graphene_django import DjangoObjectType

from .models import URL


class URLType(DjangoObjectType):
    class Meta:
        model = URL


class Query(graphene.ObjectType):
    urls = graphene. List(URLType)

    def resolve_urls(self, info, **kwargs):
        return URL.objects.all()

Сохраните и закройте файл.

Теперь все запросы необходимо добавить в основную схему. Рассматривайте ее как место хранения всех ваших ресурсов.

Создайте новый файл в shorty/schema.py и откройте его в редакторе:

Импортируйте пакеты Python, добавив следующие строки. Первая, как уже упоминалось, содержит базовые типы GraphQL. Вторая строка импортирует ранее созданный файл схемы.

shorty/shorty/schema.py

import graphene

import shortener.schema

Затем добавьте главный класс Query. Он будет хранить, через наследование, все запросы и будущие операции:

shorty/shorty/schema.py

...
class Query(shortener.schema.Query, graphene.ObjectType):
    pass

В заключение создайте переменную schema:

shorty/shorty/schema.py

...
schema = graphene. Schema(query=Query)

Настройка SCHEMA, которую вы задали на шаге 2, указывает на переменную schema, которую вы только что создали.

Полное содержание файла shorty/schema.py​​​ показано здесь:

shorty/shorty/schema.py

import graphene

import shortener.schema


class Query(shortener.schema.Query, graphene.ObjectType):
    pass

schema = graphene.Schema(query=Query)

Сохраните и закройте файл.

Затем активируйте конечную точку GraphQL и интерфейс GraphiQL, который представляет собой графический веб-интерфейс, который используется для взаимодействия с системой GraphQL.

Откройте файл shorty/urls.py​​​:

В целях обучения удалите содержимое файла и сохраните его, чтобы начать с нуля.

Первые строки, которые нужно добавить, объявляют импорт Python:

shorty/shorty/urls.py

from django.urls import path
from django.views.decorators. csrf import csrf_exempt

from graphene_django.views import GraphQLView

Функция path используется Django для создания доступного URL-адреса для интерфейса GraphiQL. Затем импортируйте csrf_exempt, который позволяет клиентам отправлять данные на сервер. Полное объяснение можно найти в документации по Graphene. В последней строке вы импортировали реальный код, который отвечает за интерфейс, через GraphQLView.

Затем создайте переменную urlpatterns.

shorty/shorty/urls.py

...
urlpatterns = [
    path('graphql/', csrf_exempt(GraphQLView.as_view(graphiql=True))),
]

Она будет связывать весь код, который необходим для создания интерфейса GraphiQL, который будет доступен в пути graphql/:

Полное содержание файла shortener/urls.py показано здесь:

shorty/shorty/urls.py

from django.urls import path
from django.views.decorators.csrf import csrf_exempt

from graphene_django. views import GraphQLView

urlpatterns = [
    path('graphql/', csrf_exempt(GraphQLView.as_view(graphiql=True))),
]

Сохраните и закройте файл.

Вернитесь в терминал, запустите команду python manage.py runserver (если она еще не запущена):

  • python manage.py runserver

Откройте в браузере адрес http://localhost:8000/graphql​​​. Вы увидите следующее:

GraphiQL — это интерфейс, где вы можете запускать операторы GraphQL и просматривать результаты. Одна из функций — раздел Docs в правом верхнем углу. Поскольку все в GraphQL типизировано, вы получите свободную документацию обо всех ваших типах, запросах, мутациях и т. д.

После изучения страницы вставьте ваш первый запрос в основную текстовую область:

query {
  urls {
    id
    fullUrl
    urlHash
    clicks
    createdAt
  }
}

Это содержание показывает, какую структуру имеет запрос GraphQL: сначала вы используете ключевое слово query, чтобы указать серверу, что вы хотите получить только определенные данные. Далее мы используем поле urls, определенное в файле shortener/schema.py, внутри класса Query. С помощью этого действия вы явно запрашиваете все поля, определенные в модели URL, используя «верблюжий» стиль, используемый по умолчанию в GraphQL.

Теперь нажмите кнопку запуска со стрелкой в левом верхнем углу.

Вы получите следующий ответ, указывающий, что у вас все еще нет URL-адресов:

Output

{ "data": { "urls": [] } }

Это показывает, что GraphQL работает. В терминале нажмите CTRL+C, чтобы остановить ваш сервер.

Вы выполнили большой объем работы на этом шаге, создав конечную точку GraphQL, создав запрос для получения всех URL-адресов и активировав интерфейс GraphiQL. Теперь мы создадим мутации для изменения базы данных.

Шаг 4 — Создание мутаций

Большинство приложений имеют возможность изменять состояние базы данных, добавляя, обновляя или удаляя данные. В GraphQL эти операции называются мутациями. Они похожи на запросы, но используют аргументы для отправки данных на сервер.

Для создания первой мутации откройте shortener/schema.py​​​:

В конце файла добавьте новый класс CreateURL:

shorty/shortener/schema.py

...
class CreateURL(graphene.Mutation):
    url = graphene.Field(URLType)

Этот класс наследует вспомогательный класс graphene.Mutation для использования возможностей мутаций GraphQL. Также у него есть имя свойства url, определяющее содержание, возвращаемое сервером после завершения мутации. В этом случае это структура данных с типом URLType.

Затем добавьте подкласс с именем Arguments в уже определенный класс:

shorty/shortener/schema.py

...
    class Arguments:
        full_url = graphene.String()

Он определяет, какие данные будут приниматься сервером. Здесь вы ожидаете параметр full_url со строковым содержанием:

Теперь добавьте следующие строки для создания метода mutate:

shorty/shortener/schema.py

...

    def mutate(self, info, full_url):
        url = URL(full_url=full_url)
        url.save()

Этот метод mutate выполняет большой объем работы, получая данные от клиента и сохраняя их в базу данных. В результате он возвращает сам класс, содержащий вновь созданный элемент.

В заключение создайте класс Mutation для хранения всех мутаций вашего приложения, добавив следующие строки:

shorty/shortener/schema.py

...

class Mutation(graphene.ObjectType):
    create_url = CreateURL.Field()

Пока у вас будет только одна мутация с именем create_url.

Полное содержание файла shortener/schema.py показано здесь:

shorty/shortener/schema.py

import graphene
from graphene_django import DjangoObjectType

from . models import URL


class URLType(DjangoObjectType):
    class Meta:
        model = URL


class Query(graphene.ObjectType):
    urls = graphene.List(URLType)

    def resolve_urls(self, info, **kwargs):
        return URL.objects.all()


class CreateURL(graphene.Mutation):
    url = graphene.Field(URLType)

    class Arguments:
        full_url = graphene.String()

    def mutate(self, info, full_url):
        url = URL(full_url=full_url)
        url.save()

        return CreateURL(url=url)


class Mutation(graphene.ObjectType):
    create_url = CreateURL.Field()

Закройте и сохраните файл.

Чтобы завершить добавление мутации, измените файл shorty/schema.py​​​:

Измените файл, чтобы добавить в него следующий выделенный код:

shorty/shorty/schema.py


import graphene

import shortener.schema


class Query(shortener.schema.Query, graphene.ObjectType):
    pass


class Mutation(shortener.schema.Mutation, graphene. ObjectType):
    pass


schema = graphene.Schema(query=Query, mutation=Mutation)

Сохраните и закройте файл. Если ваш локальный сервер не запущен, запустите его:

  • python manage.py runserver

Перейдите на страницу http://localhost:8000/graphql​​​ в браузере. Выполните вашу первую мутацию в веб-интерфейсе GraphiQL, запустив следующее выражение:

mutation {
  createUrl(fullUrl:"https://www.digitalocean.com/community") {
    url {
      id
      fullUrl
      urlHash
      clicks
      createdAt
    }
  }
}

Вы создали мутацию с именем createURL, аргументом fullUrl и данными, которые хотите получить в ответ, определенные в поле url.

Вывод будет содержать информацию о URL, которую вы только что создали в поле data GraphQL, как показано здесь:

Output

{ "data": { "createUrl": { "url": { "id": "1", "fullUrl": "https://www. digitalocean.com/community", "urlHash": "077880af78", "clicks": 0, "createdAt": "2020-01-30T19:15:10.820062+00:00" } } } }

В результате URL был добавлен в базу данных с хэшированной версией, как вы можете видеть в поле urlHash. Попробуйте запустить запрос, который вы создали в последнем шаге, чтобы увидеть результат:

query {
  urls {
    id
    fullUrl
    urlHash
    clicks
    createdAt
  }
}

Вывод будет показывать сохраненный URL:

Output

{ "data": { "urls": [ { "id": "1", "fullUrl": "https://www.digitalocean.com/community", "urlHash": "077880af78", "clicks": 0, "createdAt": "2020-03-18T21:03:24.664934+00:00" } ] } }

Также вы можете попробовать выполнить тот же запрос, но на этот раз запросить только поля, которые хотите получить.

Попробуйте выполнить его еще раз с другим URL-адресом:

mutation {
  createUrl(fullUrl:"https://www. digitalocean.com/write-for-donations/") {
    url {
      id
      fullUrl
      urlHash
      clicks
      createdAt
    }
  }
}

Результат будет выглядеть следующим образом:

Output

{ "data": { "createUrl": { "url": { "id": "2", "fullUrl": "https://www.digitalocean.com/write-for-donations/", "urlHash": "703562669b", "clicks": 0, "createdAt": "2020-01-30T19:31:10.820062+00:00" } } } }

Теперь система может создавать короткие URL-адреса и выводить их список. На следующем шаге мы будем предоставлять пользователям доступ к URL по его сокращенной версии, перенаправляя их на верную страницу.

Шаг 5 — Создание конечной точки доступа

На этом шаге мы будем использовать метод Django Views, который выполняет запрос и возвращает ответ для перенаправления любого, кто пытается получить доступ через конечную точку http://localhost:8000/url_hash​​, на полный URL-адрес.

Откройте файл shortener/views.py в редакторе:

Вначале импортируйте два пакета, заменив содержимое на следующие строки:

shorty/shortener/views.py

from django.shortcuts import get_object_or_404, redirect

from .models import URL

Это будет более подробно разъяснено позднее.

Далее мы создадим представление Django с именем root. Добавьте этот отрывок кода, который будет отвечать за представление, в конец вашего файла:

shorty/shortener/views.py

...

def root(request, url_hash):
    url = get_object_or_404(URL, url_hash=url_hash)
    url.clicked()

    return redirect(url.full_url)

Он получает аргумент с именем url_hash из URL, запрошенного пользователем. Внутри функции первая строка пытается получить URL из базы данных, используя аргумент url_hash. Если он не будет найден, клиент получает ошибку 404, что означает, что ресурс отсутствует. Затем он увеличивает значение свойства clicked для URL, что позволяет отслеживать, сколько раз был использован URL. В конце он перенаправляет клиента на запрошенный URL-адрес.

Полное содержание файла shortener/views.py показано здесь:

shorty/shortener/views.py

from django.shortcuts import get_object_or_404, redirect

from .models import URL


def root(request, url_hash):
    url = get_object_or_404(URL, url_hash=url_hash)
    url.clicked()

    return redirect(url.full_url)

Сохраните и закройте файл.

Откройте shorty/urls.py​​:

Добавьте следующий выделенный код, чтобы активировать представление root.

shorty/shorty/urls.py


from django.urls import path
from django.views.decorators.csrf import csrf_exempt

from graphene_django.views import GraphQLView

from shortener.views import root


urlpatterns = [
    path('graphql/', csrf_exempt(GraphQLView. as_view(graphiql=True))),
    path('<str:url_hash>/', root, name='root'),
]

Представление root будет доступно в пути / вашего сервера, принимая url_hash в качестве строкового параметра.

Сохраните и закройте файл. Если ваш локальный сервер не запущен, запустите его с помощью команды python manage.py runserver.

Чтобы протестировать ваши добавленные данные, откройте ваш браузер и перейдите на URL-адрес http://localhost:8000/077880af78. Обратите внимание, что последняя часть URL-адреса — это хэш, созданный мутацией из шага 5. Вы будете перенаправлены на страницу хэша URL, в этом случае на веб-сайт сообщества DigitalOcean.

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

Шаг 6 — Реализация обработки ошибок

Обработка ошибок — это лучшая практика для всех приложений, поскольку разработчики обычно не контролируют, что будет отправляться на сервер. В этом случае вы можете попытаться предусмотреть возможные ошибки и свести к минимуму их воздействие. В такой сложной системе, как GraphQL, очень многое может пойти не так, начиная с запроса неверных данных клиентом и заканчивая потерей подключения сервера к базе данных.

Будучи типизированной системой, GraphQL может проверять все, что запрашивает и получает клиент, с помощью операции под названием валидация схемы. Вы можете посмотреть это в действии, используя запрос несуществующего поля.

Перейдите на страницу http://localhost:8000/graphql в браузере еще раз и выполните следующий запрос внутри интерфейса GraphiQL, где мы будем использовать поле iDontExist:

query {
  urls {
    id
    fullUrl
    urlHash
    clicks
    createdAt
    iDontExist
  }
}

Поскольку в классе Query отсутствует поле iDontExist, GraphQL возвращает сообщение об ошибке:

Output

{ "errors": [ { "message": "Cannot query field \"iDontExist\" on type \"URLType\". ", "locations": [ { "line": 8, "column": 5 } ] } ] }

Это важно, поскольку в типизированной системе GraphQL цель заключается в отправке и получении только той информации, которая уже определена в схеме.

Текущее приложение принимает любую произвольную строку в поле full_url. Проблема в том, что если кто-то отправляет плохо построенный URL-адрес, вы можете перенаправлять пользователя в никуда при попытке получения сохраненной информации. В этом случае вам необходимо проверить, имеет ли full_url​​​ корректный формат, прежде чем сохранить его в базе данных, и при наличии ошибки выбрасывать исключение GraphQLError с заданным сообщением.

Давайте реализуем этот функционал в два этапа. Вначале откройте файл shortener/models.py​​​:

Добавьте выделенные строки в раздел импорта:

shorty/shortener/models.py

from hashlib import md5

from django. db import models
from django.core.validators import URLValidator
from django.core.exceptions import ValidationError

from graphql import GraphQLError
...

URLValidator — это вспомогательный класс Django для валидации строки URL, а GraphQLError используется Graphene для генерации исключений с заданным сообщением.

Затем необходимо выполнить валидацию URL-адреса, который получает пользователь, прежде чем сохранить его в базе данных. Активируйте эту операцию, добавив выделенный код в файл shortener/models.py:

shorty/shortener/models.py

class URL(models.Model):
    full_url = models.URLField(unique=True)
    url_hash = models.URLField(unique=True)
    clicks = models.IntegerField(default=0)
    created_at = models.DateTimeField(auto_now_add=True)

    def clicked(self):
        self.clicks += 1
        self.save()

    def save(self, *args, **kwargs):
        if not self.id:
            self.url_hash = md5(self. full_url.encode()).hexdigest()[:10]

        validate = URLValidator()
        try:
            validate(self.full_url)
        except ValidationError as e:
            raise GraphQLError('invalid url')

        return super().save(*args, **kwargs)

Сначала этот код инициализирует URLValidator в переменной validate. Внутри блока try/except​​​ вы с помощью метода validate()​​​ выполняете валидацию полученного URL-адреса и генерируете исключение GraphQLError с заданным сообщением invalid url​​​, если что-то пойдет не так.

Полное содержание файла shortener/models.py показано здесь:

shorty/shortener/models.py

from hashlib import md5

from django.db import models
from django.core.validators import URLValidator
from django.core.exceptions import ValidationError

from graphql import GraphQLError


class URL(models.Model):
    full_url = models.URLField(unique=True)
    url_hash = models. URLField(unique=True)
    clicks = models.IntegerField(default=0)
    created_at = models.DateTimeField(auto_now_add=True)

    def clicked(self):
        self.clicks += 1
        self.save()

    def save(self, *args, **kwargs):
        if not self.id:
            self.url_hash = md5(self.full_url.encode()).hexdigest()[:10]

        validate = URLValidator()
        try:
            validate(self.full_url)
        except ValidationError as e:
            raise GraphQLError('invalid url')

        return super().save(*args, **kwargs)

Сохраните и закройте файл. Если ваш локальный сервер не запущен, запустите его с помощью команды python manage.py runserver.

Затем протестируйте вашу обработку ошибок на странице http://localhost:8000/graphql. Попробуйте создать новый URL с недействительным значением full_url​​​ в интерфейсе GraphiQL:

mutation {
  createUrl(fullUrl:"not_valid_url"){
    url {
      id
      fullUrl
      urlHash
      clicks
      createdAt
    }
  }
}

При отправке недействительного URL-адреса будет сгенерировано исключение с заданным сообщением:

Output

{ "errors": [ { "message": "invalid url", "locations": [ { "line": 2, "column": 3 } ], "path": [ "createUrl" ] } ], "data": { "createUrl": null } }

Если вы посмотрите в терминале, где запущена команда python manage. py runserver, ошибка будет выглядеть следующим образом:

Output

... graphql.error.located_error.GraphQLLocatedError: invalid url [30/Jan/2020 19:46:32] "POST /graphql/ HTTP/1.1" 200 121

Конечная точка GraphQL будет выдавать сбой с кодом состояния HTTP 200, который обычно означает успешное выполнение операции. Не забывайте, что, хотя GraphQL использует HTTP, он не обязательно использует концепции кодов состояния HTTP или методы HTTP, как это делает REST.

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

Шаг 7 — Внедрение фильтров

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

Фильтрация — это стандартная концепция в REST API, когда параметр запроса с полем и значением присоединяется к URL-адресу. Например, чтобы воспользоваться фильтром для всех пользователей с именем jojo, вы можете использовать GET /api/users?name=jojo.

В GraphQL вы будете использовать аргументы запроса в качестве фильтров. Они позволяют получить хороший и чистый интерфейс.

Вы можете решить проблему трудноуловимых URL-адресов, разрешив клиенту фильтровать URL-адреса по имени с помощью поля full_url. Для этого откройте файл shortener/schema.py в предпочитаемом вами редакторе.

Вначале импортируйте метод Q в выделенной строке:

shorty/shortener/schema.py

import graphene
from graphene_django import DjangoObjectType
from django.db.models import Q

from .models import URL
...

Это будет использоваться для фильтрации запроса базы данных.

Затем перепишите весь класс Query, добавив следующее содержание:

shorty/shortener/schema.py

.. .
class Query(graphene.ObjectType):
    urls = graphene.List(URLType, url=graphene.String())

    def resolve_urls(self, info, url=None, **kwargs):
        queryset = URL.objects.all()

        if url:
            _filter = Q(full_url__icontains=url)
            queryset = queryset.filter(_filter)

        return queryset
...

Ниже представлены изменения, которые вы вносите:

  • Добавление параметра фильтрации url внутри переменной urls и метод resolve_url.
  • Внутри resolve_urls​​​, если указан параметр url, выполните фильтрацию результатов базы данных для получения только URL-адресов, которые содержат указанное значение, используя метод Q(full_url__icontains=url).

Полное содержание файла shortener/schema.py показано здесь:

shorty/shortener/schema.py

import graphene
from graphene_django import DjangoObjectType
from django.db.models import Q

from . models import URL


class URLType(DjangoObjectType):
    class Meta:
        model = URL


class Query(graphene.ObjectType):
    urls = graphene.List(URLType, url=graphene.String())

    def resolve_urls(self, info, url=None, **kwargs):
        queryset = URL.objects.all()

        if url:
            _filter = Q(full_url__icontains=url)
            queryset = queryset.filter(_filter)

        return queryset


class CreateURL(graphene.Mutation):
    url = graphene.Field(URLType)

    class Arguments:
        full_url = graphene.String()

    def mutate(self, info, full_url)
        url = URL(full_url=full_url)
        url.save()

        return CreateURL(url=url)


class Mutation(graphene.ObjectType):
    create_url = CreateURL.Field()

Сохраните и закройте файл. Если ваш локальный сервер не запущен, запустите его с помощью команды python manage.py runserver.

Проверьте внесенные изменения, перейдя на страницу http://localhost:8000/graphql. В интерфейсе GraphiQL добавьте следующее выражение. Оно будет фильтровать все URL-адреса со словом community:

query {
  urls(url:"community") {
    id
    fullUrl
    urlHash
    clicks
    createdAt
  }
}

Вывод представляет собой одну запись, поскольку вы добавили один URL со строкой community. Если вы добавили несколько URL-адресов ранее, вывод может отличаться.

Output

{ "data": { "urls": [ { "id": "1", "fullUrl": "https://www.digitalocean.com/community", "urlHash": "077880af78", "clicks": 1, "createdAt": "2020-01-30T19:27:36.243900+00:00" } ] } }

Теперь у вас есть возможность выполнять поиск по вашим URL-адресам. Однако при большом количестве ссылок ваши клиенты могут жаловаться, что список URL-адресов возвращает больше данных, чем могут обработать их приложения. Чтобы устранить эту проблему, необходимо добавить пагинацию.

Шаг 8 — Реализация пагинации

Клиенты, использующие ваш сервер, могут жаловаться, что на получение ответа уходит очень много времени, либо на слишком большой размер, если он содержит слишком много URL. Даже ваша база данных может не справляться со сборкой большого набора информации. Чтобы решить эту проблему, вы можете разрешить клиенту указывать, сколько элементов он хочет получать в каждом запросе, используя технику под названием pagination.

Используемого по умолчанию способа для реализации этой функции не существует. Даже в REST API вы можете видеть ее в заголовках HTTP или параметрах запроса с разными именами и поведением.

В этом приложении мы будем применять пагинацию, добавив два аргумента в запрос URL: first и skip. first выполняет выбор первого переменного числа элементов, а skip будет указывать, сколько элементов следует пропустить с начала. Например, используя first == 10 и skip == 5, вы получите первые 10 URL-адресов, но пропустите 5 из них, возвращая только 5 оставшихся.

Реализация этого решения аналогична добавлению фильтра.

Откройте файл shortener/schema.py:

В файле измените класс Query, добавив два новых параметра в переменную urls и метод resolve_urls, как показано в следующем коде:

shorty/shortener/schema.py

import graphene
from graphene_django import DjangoObjectType
from django.db.models import Q

from .models import URL


class Query(graphene.ObjectType):
    urls = graphene.List(URLType, url=graphene.String(), first=graphene.Int(), skip=graphene.Int())

    def resolve_urls(self, info, url=None, first=None, skip=None, **kwargs):
        queryset = URL.objects.all()

        if url:
            _filter = Q(full_url__icontains=url)
            queryset = queryset.filter(_filter)

        if first:
            queryset = queryset[:first]

        if skip:
            queryset = queryset[skip:]

        return queryset
...

Этот код использует созданные параметры first и skip внутри метода resolve_urls для фильтрации запроса базы данных.

Сохраните и закройте файл. Если ваш локальный сервер не запущен, запустите его с помощью команды python manage.py runserver.

Чтобы протестировать пагинацию, воспользуйтесь следующим запросом в интерфейсе GraphiQL на странице http://localhost:8000/graphql:

query {
  urls(first: 2, skip: 1) {
    id
    fullUrl
    urlHash
    clicks
    createdAt
  }
}

Ваш инструмент для сокращения URL-адресов будет возвращать второй URL, созданный в базе данных:

Output

{ "data": { "urls": [ { "id": "2", "fullUrl": "https://www.digitalocean.com/write-for-donations/", "urlHash": "703562669b", "clicks": 0, "createdAt": "2020-01-30T19:31:10.820062+00:00" } ] } }

Это показывает, что функция пагинации работает. Вы можете попробовать добавить несколько URL-адресов и протестировать разные значения first и skip.

Заключение

Экосистема GraphQL развивается каждый день и поддерживается активным сообществом. Она доказала свою способность для производства и используется такими компаниями, как GitHub и Facebook. И теперь вы можете использовать эту технологию для ваших проектов.

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

Вы можете узнать больше о GraphQL и инструментах, используемых здесь, на сайте GraphQL и сайтах с документацией для Graphene. DigitalOcean предоставляет дополнительные руководства для Python и Django, если вы хотите узнать больше.

Как использовать средство сокращения ссылок Калифорнийского университета в Сан-Диего

Последнее обновление: 11 марта 2021 г., 15:45:58 PST

Узнайте, как сократить ссылки на UC San Diego с помощью средства сокращения ссылок.

О сокращателе ссылки

Вы можете использовать средство сокращения ссылок (вход через систему единого входа), чтобы сокращать и делиться ссылками на веб-страницы Калифорнийского университета в Сан-Диего, которые заканчиваются на:

  • ucsd.edu
  • ucsandiegobookstore.com
  • Universityofcalifornia.edu
  • uchealth.edu
  • ucop.edu
  • ucsdcloud-my.sharepoint.com
  • ucsdcloud.sharepoint.com
  • drive.google.com
  • docs.google.com
  • outlook.office365.com
  • uchealth.service-now.com
  • ucsd-apps.kuali.co

Сокращатель ссылок работает от bitly и генерирует согласованную ссылку в форме go.ucsd.edu/xxx . Если вы забыли или потеряете созданный вами сокращенный URL-адрес, вы можете просто ввести исходный URL-адрес в средство сокращения ссылок, чтобы получить ту же короткую ссылку go.ucsd.edu.

Сократить

  1. Используйте свой браузер, чтобы перейти на веб-страницу Калифорнийского университета в Сан-Диего, которую вы хотите сократить.
  2. Скопируйте URL-адрес страницы. Пример: http://blink.ucsd.edu/instructors/resources/academic/index.html
  3. Перейдите к сокращению ссылок на shortlink.ucsd.edu (требуется вход в систему SSO).
  4. Вставьте URL-адрес в поле и щелкните Сократить .
  5. Программа сокращения ссылок сгенерирует ссылку go.ucsd.edu. Пример: http://go.ucsd.edu/1L0qo1U

Если вы видите сообщение: Неверный URL. Разрешены только домены UCSD , убедитесь, что вы используете один из принятых доменов UCSD.Если вы используете страницу Калифорнийского университета в Сан-Диего, которую, по вашему мнению, следует принять, обратитесь в службу Workplace Technology Services.

Поделиться

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

Настройка

Настроенные короткие URL-адреса недоступны по ходу.ucsd.edu. Если вам нужен индивидуальный короткий URL-адрес или «дружественная ссылка», вы можете запросить его через Workplace Technology Services (пример: http://blink.ucsd.edu/go/academiccalendars).

10 лучших сокращателей URL: как создавать красивые ссылки

Как следует из названия, сокращатели ссылок используются для сокращения длинных URL-адресов. Они не только генерируют ссылки с меньшим количеством символов, но также позволяют включать в них определенное окончание или псевдоним или даже добавлять ваше доменное имя, чтобы пользователь мог связать его с вашим брендом.

Зачем использовать сокращения URL-адресов

Почему вам может потребоваться сокращение URL-адресов

  • Для обрезки символов (особенно в сообщениях в социальных сетях, в мессенджерах и в SMS). Например, в SMS добавление короткого URL-адреса вместо полной ссылки значительно сокращает длину сообщения и, следовательно, влияет на его стоимость;
  • Чтобы скрыть UTM-теги;
  • Для облегчения восприятия копии;
  • Для отслеживания кликов на сторонних платформах.

Когда лучше избегать использования укороченных звеньев

  • Удивительно, но вставлять короткие ссылки в электронные письма — не лучшая идея. Почтовые клиенты не всегда могут отследить, куда ведет сокращенная ссылка. Вот почему они стараются держать их подальше, чтобы защитить пользователей от нерелевантной информации или вредоносных URL-адресов. Это означает, что сообщения с сокращенными ссылками с большей вероятностью попадут в спам.

Поэтому в письмах лучше использовать полные ссылки без перенаправления.Формат электронной почты позволяет использовать гиперссылки и якорные ссылки или добавлять кнопки с призывом к действию и отслеживать клики в любое время.

  • Сокращатели URL — тоже не лучший вариант для вечнозеленых ссылок, которые вам нужны всегда. Служба сокращения ресурсов может рано или поздно отключиться, а созданные ссылки будут повреждены.

Укорачивание ссылки в eSputnik

Если вы используете ESP (поставщик услуг электронной почты) для отправки электронных писем, вам не нужно добавлять сокращенные ссылки в свои кампании.У ESP есть сокращатели URL, уже встроенные в систему, и они сокращают ваши ссылки по умолчанию. Говоря профессиональным языком, это называется переносом ссылок и используется для отслеживания конверсии и рейтинга кликов. Обернутая ссылка может сказать вам, какой ESP компания использует для отправки электронных писем.

eSputnik тоже имеет эту функцию. При необходимости вы можете отключить его при создании писем. Просто откройте соответствующий шаблон в Сообщениях , откройте Дополнительные настройки в верхней панели и нажмите Укажите настройки ссылки .

Отключить URL-адресов треков. Передача тегов UTM будет отключена по умолчанию. Таким образом, клики будут совершаться по прямой ссылке, которая не хранится в оболочке. Вам может потребоваться отключить перенос ссылок, если вам нужно отслеживать клики с помощью ваших пользовательских тегов UTM.

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

10 лучших сокращателей ссылок

1. Bitly

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

Служба также позволяет создавать собственные URL-ссылки. Пользовательская ссылка — это ссылка, созданная не из случайных символов, а из определенных слов или сокращений. Опция доступна по платным планам, стоимость которых начинается от 29 долларов в месяц.

Вы также можете установить расширение браузера и сокращать ссылки на любой странице одним щелчком мыши, не копируя и вставляя их вручную.

2. is.gd

is.gd — это бесплатный инструмент для сокращения ссылок, не требующий регистрации.На его домашней странице нет ничего, кроме поля ввода URL-адреса и кнопки Shorten .

Вы можете создать собственную небольшую ссылку, развернуть Дополнительные параметры и выбрать следующее:

  • Стандарт;
  • Нижний регистр;
  • Нижний регистр произносимый;
  • Журнал статистики для этой ссылки.

Вы также можете получить свою гиперссылку в виде QR-кода, нажав Дайте мне этот URL-адрес в виде QR-кода под сокращенной ссылкой.

Если вы отметите Статистика журнала для этой ссылки, вы сможете отслеживать частоту переходов в зависимости от браузера, страны, даты и т. Д. Для просмотра перейдите на домашнюю страницу и щелкните Мои недавно сокращенные URL-адреса . Вы увидите таблицу со всеми вашими недавними ссылками. Те, у кого включена статистика, будут иметь соответствующую ссылку для просмотра.

3. Cutt.us

Сокращатель ссылок, который может генерировать ссылку с настраиваемым псевдонимом с предоставленным QR-кодом.Его преимущество — простой интерфейс и отсутствие лишних кнопок. Его недостаток — отсутствие аналитики.

4. Rebrandly.com

Сокращатель с расширенными функциональными возможностями. Такие опции, как быстрая переадресация, отслеживаемые клики за месяц и фирменные ссылки, доступны даже при бесплатном тарифном плане. За 499 долларов в месяц вы получаете премиальный план с большими лимитами ссылок и дополнительными функциями.

Этот сервис позволяет вам настроить конец ссылки и добавить свое доменное имя.Вы можете добавить несколько доменных имен даже на бесплатном тарифном плане. Более того, вы создаете папки и приглашаете членов вашей команды вместе просматривать и управлять фирменными ссылками.

5. Wow.link

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

Вы можете ввести описание ссылки, добавить название кампании и теги, разрешить доступ к аналитике (с паролем или без пароля).

Вы можете использовать бесплатный план или выбрать один из платных планов с неограниченным количеством ссылок и более продвинутым отслеживанием.Максимальная стоимость — 299 долларов в месяц.

6. lnnkin.com

Сервис позволяет создавать короткие ссылки и управлять неограниченным количеством брендированных коротких ссылок с загружаемым QR-кодом для использования в автономном режиме. Премиум-план обеспечивает интеграцию API: вы можете автоматизировать сокращение ссылок и создавать короткие ссылки прямо с серверов компании.

Innkin предлагает на выбор 6 платных тарифных планов с 5-дневной бесплатной пробной версией для каждого.

7. Goo.su

Помимо основного сокращения, Goo.su позволяет бесплатно создавать собственные ссылки. Введите ссылку, которую хотите сократить, и нажмите Дополнительные параметры. Укажите псевдоним (слово или набор символов, которые найдут отклик у вашей аудитории), выберите тип URL-адреса (общедоступный или частный) и введите пароль, если вы хотите ограничить доступ к ссылке.

Сервис по умолчанию имеет русский интерфейс, поэтому для перехода к другим версиям измените язык в верхнем меню.

8. TinyURL

Сервис сокращает ссылки и добавляет собственные псевдонимы.Вы можете скопировать сокращенную ссылку, отправить ее по электронной почте или поделиться в социальных сетях. Вы можете скачать QR-код в формате SVG, PNG или PNG 1200.

Если вы зарегистрируетесь, вы сможете создавать неограниченное количество URL-адресов и просматривать историю в своем аккаунте. Без него вы увидите 5 последних созданных вами ссылок.

9. T2M

Это полнофункциональный сокращатель ссылок с брендингом доменного имени, обширной аналитикой и интеграцией API. Планы «Базовый» и «Стандартный» охватывают достаточно задач, чтобы удовлетворить потребности малого бизнеса.Предприятия могут выбрать Премиум за 90 долларов в месяц и получить доступ к более высоким ограничениям на URL-адреса, перенаправления, аналитические фильтры и т. Д.

T2M также предлагает платные функции по требованию, такие как создание UTM, многопользовательская учетная запись, единый вход, опция white label.

10. bit.do

bit.do — это простой и легкий вариант, который позволяет вам сокращать ссылки и настраивать их, получать QR-код и отслеживать статистику ссылок. И что самое приятное, это бесплатно.

Как выбрать лучший инструмент для сокращения URL-адресов

Приведенный выше список не является полным, и вы можете выбрать другие средства сокращения ссылок.Но какую бы услугу вы ни рассматривали, обратите внимание на следующее:

  • Регистрация . Когда вам нужно быстро создать ссылку, вам нужен простой сервис без лишнего заполнения полей. Однако, если вы заинтересованы в долгосрочном расширенном управлении ссылками, лучше не торопиться и создать учетную запись, чтобы иметь доступ ко всем функциям.
  • Расширение браузера . Доступное расширение для браузера может упростить процедуру сокращения ссылок.
  • Ограничение URL .Если вы собираетесь создавать массовые ссылки, узнайте, на какое количество распространяется бесплатный план или тот, который вы используете.
  • Пользовательские ссылки . Узнайте, можете ли вы добавлять к своим ссылкам псевдонимы и доменные имена.
  • QR-код .
  • Доступ к статистике кликов .
  • Многопользовательская учетная запись. Если вам нужна совместная работа, убедитесь, что вы можете приглашать пользователей в учетную запись.

Вашему бизнесу необходим инструмент для сокращения URL-адресов

Сколько людей посетили ваш веб-сайт в прошлом месяце? Сколько из них пришло по ссылке в вашем последнем информационном бюллетене? Сколько человек перешли по ссылке, которую вы разместили в социальных сетях? Если вы управляете веб-сайтом для малого бизнеса, в ваших интересах отслеживать источники вашего веб-трафика, чтобы измерить эффективность ваших маркетинговых усилий.Это также может дать вам представление о ваших потенциальных клиентах или клиентах. Малые предприятия не всегда имеют в штате маркетолога, который знает, как отслеживать трафик таким образом. Вы можете сделать это самостоятельно, независимо от вашего уровня технических навыков, и один из самых простых способов — использовать средство сокращения URL-адресов и службу отслеживания ссылок.

Что такое средства сокращения URL?

Сокращатели URL-адресов — это приложения, обычно веб-приложения, которые принимают длинный URL-адрес и сокращают его до меньшего количества символов. Примером является TinyURL.Если вы скопируете и вставите длинную ссылку в основное поле TinyURL, веб-страница выдаст гораздо более короткую ссылку, ведущую на ту же страницу. Сокращенные ссылки лучше отображаются в электронных письмах, печатных материалах и других местах.

Некоторые службы сокращения URL-адресов превращают длинные ссылки в маленькие, и все. Более эффективные также служат службами отслеживания ссылок. Другими словами, приложение показывает трафик по каждой ссылке.

Эта возможность полезна, потому что затем вы можете создавать определенные ссылки для определенных целей.Допустим, вы хотите, чтобы люди переходили на страницу MyCompany.com/business-partnerships/new-opportunities. Это длинный URL-адрес, поэтому вы создаете две короткие версии, A и B. Вы используете ссылку A исключительно в холодных письмах, адресованных новым потенциальным партнерам. Ссылка B отправляется исключительно в электронные письма существующим партнерам. Таким образом, вы можете различать трафик ссылок по электронной почте, поступающий от новых и существующих партнеров.

Брендинг ваших ссылок

Некоторые сокращатели URL обеспечивают даже большую ценность, поскольку позволяют вам купить домен, который вы можете использовать для брендинга ссылки, чтобы повысить узнаваемость бренда.Например, когда The New York Times делает короткую ссылку, она начинается с nyti.ms/. Nike, логотипом которой является галочка, начинает многие свои короткие ссылки с swoo.sh/.

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

Начало работы с сокращателями URL-адресов

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

Один — UTM. UTM расшифровывается как модуль отслеживания ежей, но я обещаю вам, что это совсем не важно, если ваша цель — создавать ссылки, которые помогут вам лучше отслеживать свой трафик. Однако, если вы действительно хотите погрузиться в детали настройки URL-адресов, прочитайте больше о ссылках UTM, кодах UTM или конструкторах UTM.

4 Укорачиватели верхних URL-адресов и Службы отслеживания ссылок

Существует множество служб, которые могут помочь вам сократить ваши URL-адреса, переименовать их и отслеживать входящий с них трафик.Четыре упомянутые здесь — просто лучшие из тех, что я видел и пробовал, и я перечислил их в алфавитном порядке.

Bitly

Bitly — это полнофункциональный онлайн-инструмент для управления ссылками. Он генерирует уникальные ссылки, которые вы можете использовать в маркетинге, социальных сетях, визитках, рекламных материалах и других местах. Bitly упрощает некоторые технические аспекты создания уникальных ссылок, но при этом делает их короткими. Более короткие ссылки легче делиться, особенно в печатных материалах. (Раньше это было проблемой и в Twitter, но теперь даже Twitter сокращает все URL-адреса до 23 символов.Вы также можете получить сокращенные ссылки, предназначенные для вашей организации, вместо того, чтобы они представляли собой случайный набор букв и цифр. Эта служба также предоставляет вам панель управления, где вы можете отслеживать трафик на свой сайт и точно видеть, как люди попали на вашу страницу.

Bitly предоставляет бесплатный уровень обслуживания с ограничениями. Платные планы начинаются с 35 долларов в месяц.

Bl.ink

Bl.ink — это еще один полнофункциональный онлайн-инструмент для управления ссылками и сокращение URL-адресов. Он очень похож на Bitly, хотя предлагает больше типов платных планов по разным ценам, что делает его, возможно, более доступным для малого бизнеса с ограниченным бюджетом.Вы можете использовать его для создания фирменных ссылок и сокращенных ссылок. Bl.ink позволяет вам точно настроить слова, используемые в ссылках, если вы хотите, чтобы они были удобочитаемыми. Когда дело доходит до управления маркетинговыми кампаниями и отслеживания ссылок, вы получаете аналитику в реальном времени, теги с возможностью поиска и возможность добавлять заметки для себя или своих товарищей по команде.

Рекомендовано нашими редакторами

Есть бесплатная учетная запись Bl.ink с ограничениями, а также платные учетные записи от 12 долларов в месяц.

Rebrandly

Rebrandly позиционирует себя больше для профессионалов в области маркетинга и компаний, которые создают сотни или тысячи уникальных URL-адресов, а не для владельцев малого бизнеса.В остальном он похож на Bitly и Bl.ink в том, что вы можете использовать его для создания уникальных URL-адресов и отслеживания всего трафика, исходящего от них. Он также предлагает настраиваемые фирменные ссылки, а также теги, панель управления и многое другое. Даже бесплатный уровень обслуживания дает возможность создать до пяти пользовательских доменных имен для использования в ваших URL-адресах.

Rebrandly предлагает бесплатный план плюс платные опции от 29 долларов в месяц.

Yourls

В отличие от всех других служб сокращения и отслеживания ссылок, о которых я упоминал до сих пор, Yourls не очень интуитивно понятен и не подходит для менее технических специалистов.Я включаю его, потому что это очень хороший бесплатный вариант с открытым исходным кодом. К тому же, как мило это имя? Это расшифровывается как «ваш собственный сокращатель URL», но работает даже без объяснения причин. Он позволяет создавать уникальные URL-адреса, которые могут быть общедоступными или частными. Он также предлагает некоторое количество отслеживания ссылок. Вам потребуется немного технических знаний, чтобы установить его, и, хотя он легкий из коробки, вы также можете настроить его, добавив плагины или создав свой собственный.

Yourls распространяется бесплатно и с открытым исходным кодом.

Этот информационный бюллетень может содержать рекламу, предложения или партнерские ссылки. Подписка на информационный бюллетень означает ваше согласие с нашими Условиями использования и Политикой конфиденциальности. Вы можете отказаться от подписки на информационные бюллетени в любое время.

FAQ по сокращению URL | Loomly Blog

Сокращатели URL — полезные инструменты для всех, особенно для цифровых маркетологов.

Они бывают всех форм и размеров, от быстрых и бесплатных для создания ссылок на ходу до специализированных панелей мониторинга и управления кликами для брендов.

Но как они работают? И каковы преимущества его использования?

В приведенном ниже разделе часто задаваемых вопросов команда Loomly ответит на все ваши вопросы о средствах сокращения URL-адресов.



Что такое сокращение URL?

Сокращение URL-адресов — это инструмент, который преобразует слишком длинный URL-адрес (ссылку) в более компактную версию.

Сокращатели URL-адресов

удобны для людей, использующих такие маркетинговые стратегии, как аффилированный маркетинг и маркетинг в социальных сетях, где слишком длинные ссылки либо не могут быть отображены, либо добавляют ненужный код на страницу.


Что означает URL?

URL означает унифицированный указатель ресурсов.

URL-адрес включает имя домена и другую информацию для создания полного веб-адреса или ссылки.

Когда пользователь вводит URL-адрес, веб-браузер открывает определенную веб-страницу. Например, URL-адрес https://www.loomly.com/features приведет вас на страницу функций в домене Loomly https://www.loomly.com/

Итак, можно сказать, что URL-адрес — это набор направлений, и каждая веб-страница имеет уникальный.


В чем разница между короткой ссылкой, сокращенным URL-адресом и маленьким URL-адресом?

Это разные выражения, относящиеся к одному и тому же.


Почему важно сокращать URL-адреса?

С точки зрения маркетинга сокращенный URL-адрес может помочь по-разному.

1. Помогает сделать ссылку более привлекательной

Длинный URL-адрес может выглядеть неуклюжим, запутанным и иногда подозрительным. Вы знаете сорт:

https://www.amazon.com/b?node=5856181011&tag=twxcmeaxcm-20&ascsubtag=xtw-XCMEMR-1-9-gzerpb4ka6xcnugv&ref_=xtw_XCMEMR_1_9_gzerpb4ka6xw=106xcnugv1

Но, если сократить URL-адрес, его легче читать, и пользователи с большей вероятностью выберут что-то более привлекательное.

Вот почему SEMrush использует сокращение URL Bitly, например bit.ly/2yMOFcm

2. Помогает с брендингом

Если вы используете настраиваемый сокращатель URL-адресов, он может помочь повысить узнаваемость бренда и его целостность.

Многие бренды перенимают эту идею. Например, мы используем наш loom.ly URL-сокращение:

🙏 Loomly был выбран @GetApp как одно из лучших #SocialMediaMarketingSoftware для образования: https://t.co/F1MeZyDo6P #Education #Thanks pic.twitter.com/3GwreJgIiQ

— Loomly (@LoomlySocial) 22 октября 2020 г.

И Amazon использует их сокращение от amzn.to URL:

Получите автоматическую доставку предметов первой необходимости и сэкономьте до 15%? Гм, да пожалуйста! https://t.co/bMiuZT0OZQ pic.twitter.com/QU7PxyJ6NH

— Amazon (@amazon) 21 октября 2020 г.


3. Помогает отслеживать количество кликов

Большинство сокращателей URL-адресов также предоставляют маркетологам дополнительные данные, такие как количество, источник и местоположение кликов.

4. Помогает сэкономить место персонажа

Сокращатель URL-адресов может сэкономить пространство символов в Twitter и других сайтах микроблогов и мессенджеров с ограниченным пространством символов. Сокращенный URL-адрес дает вам больше места для остальной части вашего сообщения.

5. Помогает предотвратить опечатки

Если вы поделитесь длинным URL-адресом, велика вероятность того, что кто-то неправильно введет адрес в своем браузере. Короткий URL упрощает ввод текста и делает его более запоминающимся.


Можете ли вы отслеживать клики по сокращенному URL-адресу?

Да.Например, Loomly отслеживает количество, источник и местоположение кликов для вас с течением времени с помощью расширенной аналитики.


Как работает сокращение URL?

Сокращатель URL-адресов работает с использованием функции веб-сервера, называемой перенаправлением. Короткий URL-адрес перенаправляет на длинный URL-адрес.

Когда вы вводите сокращенный URL-адрес в своем веб-браузере, он отправляет HTTP-команду на веб-сервер, который проверяет адрес и перенаправляет его на исходный длинный URL-адрес.

Например, в приведенном выше примере SEMrush, когда кто-то щелкает короткий бит.ly / 2yMOFcm, Bitly использует перенаправление 301 и отправляет их на «постоянный URL» по адресу https://www.semrush.com/blog/get-to-top-local-positions-on-all-devices/


Как сократить URL-адрес?

Вы можете сократить URL-адрес с помощью службы сокращения URL-адресов, например Bitly или TinyURL.

(15 лучших сокращателей URL-адресов см. Ниже).


Могу ли я использовать параметры UTM с сокращателем URL?

Совершенно верно.

Сокращатель URL-адресов идеально подходит для сжатия длинных и громоздких URL-адресов, содержащих параметры UTM, например:

https: // блог.loomly.com/brand-purpose-with-laurent-janneau/?utm_source=Blog&utm_campaign=13b8679dcd-EMAIL_CAMPAIGN_2019_02_20_07_55_COPY_01&utm_medium=email&utm_term=07002-13c03c03c03c03c03c07c9c03cd3c03c03c8

Итак, вы получили аккуратный короткий URL:

https://loom.ly/E9Ze6ig


Срок действия сокращенных URL-адресов истекает?

Некоторые делают, а некоторые нет - это зависит от службы сокращения URL, которую вы используете.

Некоторые провайдеры заявляют, что срок их сокращенных URL не истекает.Например, TinyURL сообщает, что его сокращенные URL-адреса никогда не истекают.

Другие службы разработаны таким образом, что срок действия сокращенного URL-адреса истекает через указанное время. Например, Short.io включает функцию «Срок действия ссылки», где вы устанавливаете дату / время истечения срока действия:


Какие сокращения URL-адресов самые лучшие?

Вот список лучших сокращателей URL:

  1. Bitly - лучший универсальный инструмент для сокращения URL.
  2. TinyURL - быстро и бесплатно с настройкой ссылок.
  3. Tiny.CC - создавайте бесплатные короткие ссылки и QR-коды.
  4. Rebrandly - позволяет создавать собственные фирменные ссылки.
  5. Polr - минимальный автономный сокращатель URL-адресов.
  6. Cuttly - бесплатные персонализированные фирменные URL-адреса, а также аналитика и управление ссылками.
  7. Hyperlink - позволяет отслеживать ссылки с помощью push-уведомлений.
  8. T2M - вместе создайте короткий URL-адрес и QR-код.
  9. Yourls - настраиваемое средство сокращения URL-адресов на собственном сервере.
  10. Clkim - умная переадресация в зависимости от местоположения и устройства.
  11. Shorby - разработан в соответствии с правилом Instagram «Одна ссылка в биографии».
  12. ClickMeter - оптимизируйте маркетинговые ссылки и отслеживайте клики.
  13. Short.io - сокращайте ссылки, используя собственный домен.
  14. URL Shortener от Zapier для автоматического создания ссылок на Zap.
  15. Loom.ly - сокращение URL-адресов для пользователей Loomly.

Краткое описание сокращателей URL

Служба сокращения URL-адресов помогает создавать более чистые и удобные для пользователя URL-адреса, а в некоторых случаях также позволяет отслеживать и анализировать их работу.

Loomly - это платформа успеха бренда, которая помогает маркетинговой команде сотрудничать, публиковать, измерять и сокращать URL-адреса: начните 15-дневную бесплатную пробную версию.

10 API-интерфейсов сокращения популярных URL-адресов

В жизни каждого веб-разработчика наступает момент, когда ему необходимо сократить URL-адрес. Причина может заключаться в том, чтобы скрыть ссылки отслеживания, подогнать ссылку к твиту, сделать ссылку более запоминающейся, уменьшить ссылку, чтобы поместить ее в печать, добавить брендинг к ссылке, запустить A / B-тест, перенастроить ссылку для исследование рынка или, возможно, замена ссылки позже (ротация ссылок).

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

Что такое API-интерфейс сокращения URL-адресов?

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

Лучшее место для поиска этих API - это категория URL Shortener в каталоге ProgrammableWeb .Там разработчики могут найти полезные программные ресурсы, такие как API для сокращения URL-адресов.

В этой статье мы подробно рассмотрим десять самых популярных API-интерфейсов сокращения URL-адресов, основанных на просмотрах страниц на веб-сайте ProgrammableWeb.

1. Bitly API

Bitly позволяет пользователям сокращать URL-адреса, делиться и отслеживать ссылки. Доступ к функции Bitly можно получить через их веб-сайт, букмарклеты и этот открытый APITrack через этот API. Сервис Bit.ly позволяет пользователям настраивать сокращенные ссылки, используя их фирменные наименования или другие слова.

Bitly - это программа сокращения URL-адресов корпоративного класса с API. Снимок экрана: Bitly

2. Ow.ly API

Ow.ly - это приложение для сокращения и расширения ссылок, которое позволяет пользователям сокращать или расширять URL-адреса веб-страниц, загруженных фотографий и загруженных документов. Ow.ly APITrack этот API позволяет разработчикам интегрировать функциональность Ow.ly с другими приложениями с помощью методов сокращения URL-адресов, расширения URL-адресов, получения информации об URL-адресах и доступа к статистике кликов.Ow.ly является частью инструментов управления социальными сетями Hootsuite.

3. Tiny-URL API

Tiny-URL Open APITrack этот API - сервис, который позволяет пользователям сокращать URL-адреса. Вместо того, чтобы предоставлять единый сокращатель URL-адресов, Tiny-URL подключается к более чем 80 другим службам. API использует протокол RESTful, а ответы форматируются в XML, JSON или TXT.

4. Hide URI API

Hide URI добавляет в приложения возможности сокращения URL-адресов. REST APITrack этого API возвращает объекты JSON, содержащие сокращенные URL-адреса.

5. QRTag API

QRtag генерирует QR-код для заданного URL. QRtag.net APITrack этот API возвращает QR-коды в PDF-файлах, SVG- или PNG-изображениях. Чтобы использовать API, вставьте его как обычный образ.

6. VURL API

VURL APITrack этот API может быть интегрирован с приложениями для автоматизации возможностей сокращения URL-адресов. URL-адреса, отправленные на VURL.com, должны быть закодированы.

7. CU8.in API

Cu8.in APITrack этот API предоставляет бесплатную службу API сокращения URL без регистрации.Пользователи могут быстро сокращать URL-адрес и создавать настраиваемые ссылки всего несколькими щелчками мыши менее чем за 10 секунд.

8. Rebrandly API

Rebrandly - это программа для сокращения URL-адресов. С помощью Rebrandly APITrack пользователи этого API могут встраивать в приложения функции для создания, отслеживания и обмена фирменными короткими ссылками.

9. CHOGOON URL Shortener API

CHOGOON предоставляет API для разработчиков. CHOGOON URL Shortener APITrack этот API возвращает ответ в формате JSON на запрошенный URL для сокращения.

10. Сокращение Mgnet.me API

Mgnet.me - это сокращение для схемы magnet: URI. Магнитные ссылки в основном используются для ссылки на ресурсы, доступные для загрузки через одноранговые сети. API Mgnet.me предоставляет те же функции в форматах вывода XML, JSON и текста.

В категории «Сокращение URL-адресов» можно найти более 120 API, а также SDK и образцы исходного кода.

6 лучших средств сокращения URL-адресов для сокращения длинных ссылок

Длинные веб-ссылки - это так старомодно, и мальчик! Они когда-нибудь выглядят как спам?Использование хорошего сокращателя URL-адресов для минимизации количества символов в ссылке - это способ выйти в Интернет в наши дни, особенно если вы хотите, чтобы все ваши онлайн-друзья и последователи были довольны.

Существует множество вариантов сокращения ваших ссылок, а некоторые даже предоставляют дополнительные услуги, такие как создание закладок для ссылок и аналитика ваших кликов. Ознакомьтесь со следующими поставщиками сокращения URL-адресов, с которыми вы можете сразу начать работу.

P.S. Если вам нужно изменить URL-адрес на странице в социальной сети, это легко сделать.

Bitly находится на вершине игры по сокращению URL-адресов. Это один из наиболее широко используемых вариантов, и вы часто обнаружите, что он интегрирован с множеством других сервисов, а также со сторонними приложениями, такими как TweetDeck и TwitterFeed. С Bitly вы можете отслеживать, сколько кликов получают ваши сокращенные ссылки, а также делать закладки и организовывать свои ссылки на своей персонализированной панели инструментов Bitly.

В прошлом TinyURL был одним из лучших вариантов сокращения, и люди все еще часто его используют, однако он включает на пару символов больше по сравнению с другими, такими как Bit.лы. С TinyURL вы можете настроить конечные буквы и цифры в качестве опции. Например, сокращенная ссылка может быть http://tinyurl.com/webtrends . Это полезная дополнительная функция, если для вас важен брендинг или если вы хотите упростить запоминание ссылки.

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

Is.gd предоставляет один из самых простых способов сокращения URL-адресов, предоставляя вам не что иное, как поле для ввода вашей длинной ссылки, так что вы можете мгновенно преобразовать ее в более короткую. Здесь нет никаких дополнительных функций или услуг, поэтому это хороший выбор, если вы просто хотите выполнить работу как можно быстрее и плавнее, без лишних хлопот, таких как вход в систему, CAPTCHA и другие вещи.

AdF.ly использует интересный подход к сокращению ссылок, предлагая своим пользователям возможность зарабатывать деньги, используя свой сервис. Чем больше кликов вы получите по ссылкам AdF.ly, тем больше денег вы заработаете. Хотя заработок небольшой, он, безусловно, может возрасти, если вы сможете привлечь много кликов. Вы также получите подробную статистику по каждой ссылке, когда зарегистрируетесь для учетной записи, и вам будут платить через PayPal за выплаты от 5 долларов.

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

Спасибо, что сообщили нам!

Расскажите, почему!

Другой Недостаточно подробностей Сложно понять

Социальные сети | Доступность ASU

Основы

  1. Предоставьте точные альтернативные варианты текста для изображений.
  2. Видео с субтитрами.
  3. Сделайте хэштеги доступными.
  4. Используйте сокращение URL.

Подробно

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

1. Предоставьте точные альтернативные варианты текста для изображений.

Изображения, передающие значимую информацию, должны иметь альтернативный текст, описывающий их, в теле сообщения, в подписи или как «скрытый» ALT-текст на изображении.

Instagram и Facebook предоставляют автоматически сгенерированный текст ALT для изображений с использованием технологии распознавания объектов. Часто автоматические подписи неточны и требуют редактирования.

LinkedIn автоматически генерирует текст ALT только для некоторых изображений. Twitter не имеет автоматически сгенерированного альтернативного текста, и вы должны включить «Составить описания изображений» в своих настройках, чтобы вручную вводить альтернативный текст.

Подробнее о написании эффективного ALT-текста.

2. Видео с субтитрами.

В ASU все онлайн-видео должны иметь субтитры. Субтитры к видео жизненно важны для многих людей, в том числе для глухих или слабослышащих.

Если вы загружаете видеофайл в социальную сеть, убедитесь, что у него точные субтитры. Перед публикацией выполните одно из следующих действий:

  • Если платформа автоматически генерирует подписи, отредактируйте их для обеспечения точности.
  • Создавайте подписи вне платформы (например, на YouTube) и загружайте файлы.SRT в платформу социальных сетей. (См. Инструкции по созданию субтитров на YouTube.)
  • Встраивайте субтитры непосредственно в видео перед загрузкой, используя приложения для создания субтитров, такие как Apple Clips (встроенные в iOS) или Clipomatic.

Если вы встраиваете видео, размещенное на другой платформе, например YouTube или Vimeo, или ссылаетесь на него, убедитесь, что субтитры на стороннем сайте верны.

Допустимые методы создания субтитров Facebook Twitter LinkedIn Instagram
Загрузите файл с субтитрами (.SRT-файл) создан
вне платформы
X X X

Загрузить видео со встроенными субтитрами

X X X X
стороннее видео (Vimeo или
YouTube), в котором уже есть субтитры
X X X X
Ссылка на сторонний сайт с
версией видео с субтитрами
X X X X

Подробнее о создании хороших подписей.

3. Сделайте хэштеги доступными.

Делайте первые буквы каждого слова в хэштегах заглавными. Программы чтения с экрана с большей вероятностью прочитают каждое слово, а не один длинный беспорядок. Например, #ThisIsBetterForScreenReaders, чем #THISISNOTGOOD или #noristhis.

Кроме того, переместите упоминания и хэштеги в конец ваших сообщений. Навигация по ним может сбивать с толку людей, использующих программы чтения с экрана.

4. Используйте сокращение URL.

Короткие URL-адреса намного легче прослушивать, чем длинную строку из букв, цифр и знаков препинания.Twitter автоматически сокращает URL-адреса до 23 символов, но другие платформы социальных сетей этого не делают. См. Https://blog.hubspot.com/marketing/google-url-shortener-alternatives для ... Упс. Я имею в виду, посмотрите эту статью о «7 лучших средствах укорочения ссылок», чтобы найти тот, который вам нравится. 😉

Семинар: доступные социальные сети

Скачать слайды и стенограмму