diff --git a/CHANGELOG.md b/CHANGELOG.md index 0efab8604..84e6149b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Changed +- Add handling of 403/500 for `getSessionId`, in [#87](https://github.com/Microsoft/BotFramework-DirectLineJS/pull/87) ## [0.9.16] - 2018-08-14 ### Added diff --git a/src/directLine.ts b/src/directLine.ts index d667fcbce..c89644bd0 100644 --- a/src/directLine.ts +++ b/src/directLine.ts @@ -496,10 +496,16 @@ export class DirectLine implements IBotConnection { } }) .map(ajaxResponse => { - konsole.log("getSessionId response: " + ajaxResponse.response.sessionId); - return ajaxResponse.response.sessionId as string; + if (ajaxResponse && ajaxResponse.response && ajaxResponse.response.sessionId) { + konsole.log("getSessionId response: " + ajaxResponse.response.sessionId); + return ajaxResponse.response.sessionId as string; + } + return ''; + }) + .catch(error => { + konsole.log("getSessionId error: " + error.status); + return Observable.of(''); }) - .catch(error => this.catchPostError(error)) ) .catch(error => this.catchExpiredToken(error)); }