Каково определение «неопубликованного API», как упомянуто в Slack Developer Policy? - PullRequest
1 голос
/ 03 июля 2019

В соответствии с политикой Slack для разработчиков приложений , в разделе «Безопасность» разработчикам запрещено, среди прочего:

Использование неопубликованных API

Что именно это означает?

Как веб-разработчик, я обычно использую AWS API Gateway для развертывания своих API.Согласно Документация AWS :

После того, как вы развернули свои API, вы можете опубликовать их, развернув портал разработчика, и вы можете продавать свои API как SaaS через AWS.Marketplace.

Я не особенно заинтересован в продаже доступа к API через AWS Marketplace, но, похоже, это требование для публикации в Slack.

Более тогов том же разделе 1022 * Мне сказали, что мои клиенты могут легко:

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

Требуется ли все это для интеграции с моим приложением Slack?

Мой рабочий процесс обычно включает установку приложения React в качестве передней-конец и подключение кпользовательский API в бэк-энде с использованием кода, подобного следующему:

componentDidMount() {
    fetch("https://api.example.com/items")
      .then(res => res.json())
      .then(
        (result) => {
          this.setState({
            isLoaded: true,
            items: result.items
          });
        },
        // Note: it's important to handle errors here
        // instead of a catch() block so that we don't swallow
        // exceptions from actual bugs in components.
        (error) => {
          this.setState({
            isLoaded: true,
            error
          });
        }
      )
  }

, где "https://api.example.com" будет API, который я создал.Это неправильный подход?Или же я обязан пройти описанные выше шаги, чтобы сделать этот API публично доступным, как описано выше?

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

Помощь будет принята с благодарностью!Я не хочу непреднамеренно нарушать условия политики из-за отсутствия исследований.

...