Skip to content

Commit 1b03a41

Browse files
feat(UI): Use the server url in the client
1 parent d9f924e commit 1b03a41

File tree

3 files changed

+15
-10
lines changed

3 files changed

+15
-10
lines changed

app.js

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,30 +27,34 @@ require('./config/express')(app);
2727

2828
// Create the token manager
2929
let tokenManager;
30+
const serviceUrl = process.env.SPEECH_TO_TEXT_URL || 'https://gateway.watsonplatform.net/speech-to-text/api';
3031

3132
if (process.env.SPEECH_TO_TEXT_IAM_APIKEY && process.env.SPEECH_TO_TEXT_IAM_APIKEY !== '') {
32-
tokenManager = new IamTokenManagerV1({
33+
tokenManager = new IamTokenManagerV1.IamTokenManagerV1({
3334
iamApikey: process.env.SPEECH_TO_TEXT_IAM_APIKEY || '<iam_apikey>',
3435
iamUrl: process.env.SPEECH_TO_TEXT_IAM_URL || 'https://iam.bluemix.net/identity/token',
3536
});
3637
} else {
3738
const speechService = new SpeechToTextV1({
3839
username: process.env.SPEECH_TO_TEXT_USERNAME || '<username>',
3940
password: process.env.SPEECH_TO_TEXT_PASSWORD || '<password>',
40-
url: process.env.SPEECH_TO_TEXT_URL || '<url>',
41+
url: serviceUrl,
4142
});
4243
tokenManager = new AuthorizationV1(speechService.getCredentials());
4344
}
4445

4546
app.get('/', (req, res) => res.render('index'));
4647

47-
// Get token using your credentials
48-
app.get('/api/token', (req, res, next) => {
48+
// Get credentials using your credentials
49+
app.get('/api/credentials', (req, res, next) => {
4950
tokenManager.getToken((err, token) => {
5051
if (err) {
5152
next(err);
5253
} else {
53-
res.send(token);
54+
res.json({
55+
token,
56+
serviceUrl,
57+
});
5458
}
5559
});
5660
});

public/scripts/bundle.jsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import './polyfills';
22
import React from 'react';
33
import ReactDOM from 'react-dom';
4-
import Demo from '../../views/demo.jsx'
4+
import Demo from '../../views/demo.jsx';
55

6-
ReactDOM.render(<Demo/>, document.getElementById('root'));
6+
ReactDOM.render(<Demo />, document.getElementById('root'));

views/demo.jsx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,7 @@ export default React.createClass({
9696
resultsBySpeaker: this.state.speakerLabels,
9797
// allow interim results through before the speaker has been determined
9898
speakerlessInterim: this.state.speakerLabels,
99+
url: this.state.serviceUrl,
99100
}, extra);
100101
},
101102

@@ -263,13 +264,13 @@ export default React.createClass({
263264
},
264265

265266
fetchToken() {
266-
return fetch('/api/token').then((res) => {
267+
return fetch('/api/credentials').then((res) => {
267268
if (res.status !== 200) {
268269
throw new Error('Error retrieving auth token');
269270
}
270-
return res.text();
271+
return res.json();
271272
}) // todo: throw here if non-200 status
272-
.then(token => this.setState({ token })).catch(this.handleError);
273+
.then(creds => this.setState({ ...creds })).catch(this.handleError);
273274
},
274275

275276
getKeywords(model) {

0 commit comments

Comments
 (0)