2015-09-02 3 views
0

Я вручную развернул WAR (на Tomcat), содержащий реализацию REST API, который предоставляет конечную точку Swagger 2.0. REST API разработан с использованием среды Restlet в Java. Структура папок на приложение хоста выглядит следующим образом:Хостинг Java REST API для службы приложений Azure API

/site/wwwroot/webapps/myapp.war 
/site/wwwroot/apiapp.json 

Содержание apiapp.json является:

{ 
    "$schema": "http://json-schema.org/schemas/2014-11-01/apiapp.json#", 
    "id": "myapp.apiapp", 
    "namespace": "<myusername>.onmicrosoft.com", 
    "gateway": "2015-01-14", 
    "version": "1.0.0", 
    "title": "Title", 
    "summary": "", 
    "author": "Author", 
    "endpoints": { 
     "apiDefinition": "/myapp/api-docs", 
     "status": null 
    } 
} 

Я могу получить чванство JSON, перейдя https://<myapphost>.azurewebsites.net/myapp/api-docs

однако когда Я пытаюсь просмотреть определение API на Azure Portal. Я вижу пустую таблицу, а затем получаю следующую ошибку:

The gateway did not receive a response from 'Microsoft.AppService' within the specified time period. 
+0

1. Вы находитесь в «свободном» плане? Могут быть некоторые ограничения в отношении того, что вы можете и чего не можете сделать. Можете ли вы перейти на стандарт? 2. Вы в курсе всех пакетов и SDK? – jdruid

+0

@jdruid, я участвую в пробной подписке и использую стандартный тарифный план S1. У меня есть последняя версия Azure SDK для Java, поскольку я сказал, что API работает нормально, и я могу поговорить с ним. Это часть определения API, которая не работает. – Santosh

ответ

0

Ошибка оператора :-) Я думал, что я обслуживаю Swagger 2.0, а на самом деле у меня все еще был старый Swagger 1.2. После обновления спецификации Swagger 2.0 теперь я могу увидеть определения, перечисленные на портале Azure. Я хочу, чтобы ошибка была более значимой, чем «тайм-аут шлюза»!

Смежные вопросы