2017-09-19 1 views

Antwort

0

Alle Siesta-Antworten beginnen als Rohdaten (in Form des Foundation-Typs Data), dann durchlaufen Sie die transformer pipeline.

Die Standard-Transformer-Pipeline analysiert JSON, Text und Bilder basierend auf dem Header Content-type, der vom Server gesendet wird. Diese Liste enthält keine PDF-Datei. Wenn Ihr Server also den Inhaltstyp application/pdf (oder einen anderen JSON-, Text- oder Bildinhaltstyp) sendet, ist die Antwort am Ende der Pipeline immer noch raw Data :

request.onSuccess { entity in 
    guard let data = entity.content as? Data else { 
    print("Huh, got mystery response:", entity.content) 
    return 
    } 
    // do stuff with data 
} 

wenn Sie nicht Data bekommen werden - wenn über den Code sagt „huh“ - dann etwas in der Pipeline, die Antwort zu verwandeln. Sie können Siesta ausführliche Protokollierung verwenden, um herauszufinden, was:

Siesta.LogCategory.enabled = LogCategory.detailed 

Blick in die Protokollausgabe für:

  • Added config, die protokolliert, wenn etwas einen Transformator an die Pipeline ergänzt
  • die pipeline Abschnitt der Resulting configuration vor der fraglichen Anfrage, die alle Transformatoren zeigt, die für die Antwort gelten können, und
  • Applied transformer und Response after pipeline, um zu sehen, wie Die tatsächliche Serverantwort wird transformiert.