ich kenne mich mit swift gar nicht aus. aber das ist auch nebensaechlich, da dein problem eher bei webbasierter loginabfrage liegt, mit der ich mich wiederum ein wenig auskenne. der link den du gepastet hast verlangt credentials im format der
HTTP Basic Auth.
da du dich vmtl. mit dem browser problemlos einloggen kannst, kannst du dir auf http-ebene (mit wireshark) anschauen, was der browser richtig macht. wenn du diesen mitschnitt dann mit deinem programm vergleichst, wo du eigentlich alles korrekt angegeben hast, das aber nicht funktioniert, kannst du herausfinden, woran das liegt.
als beispiel dafuer gilt z.b. direkt der header, der gesetzt wird, wenn dein browser die o.g. http basic auth credentials an den server sendet. da hast du dann naemlich eine zeile, die in etwa so (vgl. wiki-link) aussieht:
Code:
Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l
"QWxhZGRpbjpPcGVuU2VzYW1l" ist dabei der base64-encodierte string "<username>:<password>". diese rueckkonvertierung kannst du z.b. auf
https://www.base64decode.org/ vornehmen, und der dekodierte string lautet "Aladdin:OpenSesame".
auf demselben weg solltest du dir jetzt anschauen, was fuer einen header dein programm an den server schickt, und wenn dieser (oder andere, dann relevante) header sich unterscheiden kannst du herausfinden, was genau schief laeuft.
was mir beim zuvor von SO verlinkten link z.b. einfaellt, ist dass meiner erinnerung nach die username/password parameter urlencodiert werden, wobei z.b. in emailadressen das "@" zu einem "%40" wird, was offensichtlich in unterschiedlichen base64-encodierten authorization headern resultieren wuerde.
aber stell doch erst mal fest, dass die dumps von browser/programm tatsaechlich unterschiedliche ergebnisse liefern.