1
0
mirror of https://github.com/twirl/The-API-Book.git synced 2025-06-24 22:36:43 +02:00

proofreading

This commit is contained in:
Sergey Konstantinov
2023-06-18 23:56:31 +03:00
parent c24c62ccdb
commit f20d0fda78
8 changed files with 447 additions and 468 deletions

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

View File

@ -3873,17 +3873,17 @@ let status = api.getStatus(order.id);
<pre><code>let order = api.createOrder();
let status;
while (true) {
try {
status = api.getStatus(order.id);
} catch (e) {
if (e.httpStatusCode != 404 ||
timeoutExceeded()) {
break;
}
try {
status = api.getStatus(order.id);
} catch (e) {
if (e.httpStatusCode != 404 ||
timeoutExceeded()) {
break;
}
}
}
if (status) {
}
</code></pre>
<p>Мы полагаем, что можно не уточнять, что писать код, подобный вышеприведённому, ни в коем случае нельзя. Уж если вы действительно предоставляете нестрого консистентный API, то либо операция <code>createOrder</code> в SDK должна быть асинхронной и возвращать результат только по готовности всех реплик, либо политика перезапросов должна быть скрыта внутри операции <code>getStatus</code>.</p>
@ -3955,7 +3955,7 @@ object.observe('widthchange', observerFunction);
PUT /v1/api-types/{api_type}
{
"order_execution_endpoint": {
// Описание функции обратного вызова
// Callback function description
}
}
</code></pre>
@ -3964,12 +3964,12 @@ PUT /v1/api-types/{api_type}
PUT /v1/partners/{partnerId}/coffee-machines
{
"coffee_machines": [{
"id",
"api_type",
"location",
"supported_recipes"
}, …]
}
</code></pre>
<p>Таким образом механика следующая:</p>
<ul>
@ -4048,7 +4048,7 @@ POST /v1/recipes
<pre><code>"product_properties": {
// "l10n" — стандартное сокращение
// для "localization"
"l10n" : [{
"l10n": [{
"language_code": "en",
"country_code": "US",
"name",
@ -5116,6 +5116,7 @@ Authorization: Bearer &#x3C;token>
<li>техническая поддержка внешних пользователей осуществляется по остаточному принципу.</li>
</ul>
</li>
<li>Разработчики внутренних сервисов часто ломают обратную совместимость или выпускают новые мажорные версии, совершенно не заботясь о последствиях этих действий для внешних партнёрах.</li>
</ul>
<p>Всё это приводит к тому, что наличие внешнего API зачастую работает не в плюс компании, а в минус: фактически, вы предоставляете крайне критически и скептически настроенной аудитории очень плохой продукт. Если у вас нет ресурсов на грамотное развитие API как продукта для внешних пользователей — лучше за него не браться совсем.</p>
<h5><a href="#chapter-52-paragraph-5" id="chapter-52-paragraph-5" class="anchor">5. API = площадка для рекламы</a></h5>

Binary file not shown.