Доступ к сообщениям об ошибке веб-сервисов потока данных

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

Функция history возвращает ошибки в объекте matlab.net.http.ResponseMessage. Например, предположите, что вы вводите недопустимое имя безопасности для входного параметра sec. Получившийся вывод имеет эту форму:

d = 

  ResponseMessage with properties:

    StatusLine: 'HTTP/1.1 200 OK'
    StatusCode: OK
        Header: [1×6 matlab.net.http.HeaderField]
          Body: [1×1 matlab.net.http.MessageBody]
     Completed: 0

Доступ к свойству Body с помощью записи через точку.

d.Body
ans = 

  MessageBody with properties:

             Data: [1×1 struct]
          Payload: []
      ContentType: [1×1 matlab.net.http.MediaType]
    ContentCoding: [0×0 string]

Чтобы получить доступ к тексту сообщения об ошибке, получите доступ к вложенной структуре DataResponse, сохраненный в свойстве Data.

d.Body.Data.DataResponse
ans = 

  struct with fields:

    AdditionalResponses: []
          DataTypeNames: []
         DataTypeValues: [3×1 struct]
                  Dates: []
            SymbolNames: []
                    Tag: ''

Затем получите доступ к полю SymbolValues в массиве структур DataTypeValues.

d.Body.Data.DataResponse.DataTypeValues(1).SymbolValues
ans = 

  struct with fields:

    Currency: []
      Symbol: 'YYY'
        Type: 0
       Value: '$$ER: E100,INVALID CODE OR EXPRESSION ENTERED'

Зафиксируйте свой код на основе сообщения об ошибке в поле Value.

Смотрите также

|

Похожие темы

Внешние веб-сайты