Working through the Extending Web Services / Web services tutorials, Siren platform 11.1.3, invoking the “beginner” string reverse service and I get an internal server error:
“message”:“The service example-web-service-group-stringreverser returned an array, but should only be returning either single object (if storing results in the invocation index) or an object of the structure { indexSuffix: [result1, result2] } result in the invocation index, but it returned an array of objects; it must return only one result.”
Any/all help is greatly appreciated! The idea of consuming REST service results is VERY POWERFUL!
Hi Richard,
The output of the invoke function should not be an array, but just an object.
Please use this
return {
reversed_message: reversed_input
}
instead of
return [{
reversed_message: reversed_input
}]
This should resolve the issue.
We will correct this in our documentation of webservice.
Regards
Manu
1 Like
Thank you! I actually made that change. But I didn’t restart Investigate. Rookie mistake. Now it works. Thank you again!!!
1 Like
Okay, since we are modifying the Beginner Tutorial documentation, you also need to fix the Intermediate Tutorial documentation!!!
You need to change, in index.js:
import { MyWeatherService } from ‘./MyWeatherService’;
to
import { MyWeatherService } from ‘./src/MyWeatherService’;
G’day!
1 Like
Finally, there is an issue with the Advanced Tutorial. I followed the tutorial and registered my OpenWeatherMap.org app ID in config/investigate.yml, but I get an invalid app id message when running in Siren (node invoke works fine). If I change the code to hard-code the app ID the service works in Siren. So there appears to be a problem extracting the app ID via this.config.auth_token in MyGeneratedService.ts.
Any help would be greatly appreciated!
Thanks.