죄송합니다. Jennifer Person's videos의 7 개를 보았습니다. documentation을 읽고 자습서를 통해 작업했지만 아직 내 기능을 작성하는 방법을 알지 못합니다. 나는이 CURL 스크립트를 사용하여 얻어지는 IBM 왓슨 음성 - 텍스트 토큰을 유도 할 수있는 기능을 쓰기 위해 노력하고있어 :Firebase Cloud 사용자 로그인 트리거에서 HTTP 요청을 보내는 기능은 무엇입니까?
curl -X GET --user username:password --output token
"https://stream.watsonplatform.net/authorization/api/v1/token?url=https://stream.watsonplatform.net/speech-to-text/api"
즉, URL에 HTTP GET 요청을 보내 사용자 이름을 제공하고 암호를 입력 한 다음 출력을 파일 /javascript/services/token
에 씁니다.
이것은 내 생각에 함수입니다. 인증 트리거는 Nodejs HTTP GET 요청을 랩하고 NodeJs 파일은 fs.writefile
을 저장합니다.
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.getWatsonToken = functions.auth.user().onCreate(event => { // authentication trigger
var https = require('https'); // Nodejs http.request
var options = {
host: 'stream.watsonplatform.net',
path: '/authorization/api/v1/token?url=https://stream.watsonplatform.net/speech-to-text/api',
username: groucho,
password: swordfish
};
callback = function(response) {
response.on('end', function() {
console.log(response);
fs.writeFile("/javascript/services/token", response);
});
}
http.request(options, callback).end();
});
누락 된 태그 관련 - Firebase 용 Cloud Functions는 Google Cloud 기능을 둘러싼 래퍼이므로 해당 태그가 사용됩니다. https://stackoverflow.com/a/42859932/4815718 –
Firebase 프로젝트에 대한 청구가 활성화되어 있는지 확인 했습니까? 외부 URL을 호출 할 수 없기 때문입니다. 무료 계정의 한계입니다. – bash
Cloud 기능 인스턴스의 임의 파일에 쓸 수 없습니다./tmp에 쓸 수 있습니다. 하지만 그 주위에 붙어 보장되지 않습니다. 왜 파일에 데이터가 필요합니까? 최종 게임은 무엇입니까? –