2016-10-24 4 views
0

나는 Azure 플랫폼에서 webjob을 가지고 놀고 있으며 ID가 도전하여 JS로 작성하기로 결정했습니다.Node.js, Azure 모바일 서비스 클라이언트, JSDOM 및 WebJobs?

필자가 작성한 앱이 Azure Easy Tables와 대화한다는 것은 본질적으로 다릅니다. 예외적으로, 서버 (Azure)에서 API 정보를 가져 와서 테이블에 직접 넣기를 원했습니다. 나를 위해.

지금까지 Azure와 대화하기 위해 jsdom 환경을 얻을 수 있지만 모바일 클라이언트를 차게하는 것으로 생각되는 사용자 에이전트가 있습니다.

jsdom.env({ 
html: "<!DOCTYPE html><html><head></head><body></body></html>", 
headers: { 'User-Agent': 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)' }, 
done: function (errors, window) { 
var $ = require("jquery")(window); 

console.log('Kebab'); 
console.log(window.navigator.userAgent); 
console.log('Lettuce?'); 

var client = new WindowsAzure.MobileServiceClient('https://myapp.azurewebsites.net'); 
var locationTable = client.getTable('table').read().then(
    function (events) { 
    console.log(events); 
    }, 
    function (events) { 
    console.log(events); 
    } 
); 

console.log('Chilli?'); 
console.log(client); 
window.close(); 
} 
}); 

window.navigator.userAgent 보고서 : 검색

Error: Unsupported browser - no suitable providers are available. 

는이 푸른이 같은 실패 트리거 것을 의미한다 :

테이블에

푸른 연결이 저에게이 있습니다

Node.js (win32; U; rv:v6.7.0) AppleWebKit/537.36 (KHTML, like Gecko) 
그것이 작동하도록 허용 할 브라우저를 볼 수 없습니다.

console.log(client)이 설치 ID로 응답하므로 Azure 플랫폼까지 도달했음을 알고 있습니다.

그래서 jsdom입니까? Azure 클라이언트가이를 통해 조정할 필요가 있습니까? 더 쉬운 방법은 도구를 사용하여이 작업을 수행해야합니다 (Easy Tables 등).

답변

0

안타깝게도 현재 MobileServiceClient JS 라이브러리는 노드 환경에서 작동하지 않습니다. (기능 요청은 our github repo에 자유롭게 기록하십시오.) 해결 방법으로

, 당신이 올바른 헤더// 테이블을 요청, 직접 HTTP 연결을 수행해야합니다 (특히, ZUMO-API-VERSION = 2.0.0)

+0

확인 흠 - 그래서 내가 추측 https://www.npmjs.com/package/azure-mobile-apps-client#use-the-sdk-as-an-npm-package를 보았을 것입니다. 이제 노드가 활성화되었습니다. – MarkBeharrell

+0

... 그리고 boooo는 작업에 매우 가깝습니다. 그것은 서버에 도착할 수 있고 그냥 아무것도 할 수없는 요청을 볼 수 있습니다. ( – MarkBeharrell

+0

SDK가 npm에 있으므로 npm을 설치하고 Browserify 또는 Webpack 또는 Broccolli와 함께 사용할 수 있습니다. 노드에. –

관련 문제