2015-11-01 2 views
0

Я пытаюсь получить ответ JSON с метеорологическими данными, поступающими из облака Netatmo, используя функцию лямбда/javascript в Amazon S3 AWS. Сначала я пытаюсь извлечь токен, используя следующий метод. Кажется, знак доллара не признан. Что дает?Выполнение запроса Ajax в Amazon S3 с использованием функции лямбда

function getNetatmoData(){ 
var clientId = "******"; 
var clientSecret = "******"; 

var userId="******@******.com"; 
var parola="******"; 
var formUserPass = { client_id: clientId, 
client_secret: clientSecret, 
username: userId, 
password: parola, 
scope: 'read_station', 
grant_type: 'password' }; 

$.ajax({ 
async: false, 
url: "https://api.netatmo.net/oauth2/token", 
    type: "POST", 
    dataType: "json", 
    data: formUserPass, 
    success: function(token){ 
     // do something awesome with the token.. 
    } 

}); 


console.log("http request successful..."); 

} 

ответ

1

Похоже, вы пытаетесь использовать метод ajax jQuery. Если jQuery не загружен, это не сработает. Я не очень хорошо знаком с лямбда-интерфейсом AWS, поэтому, если можно загрузить jQuery перед запуском скрипта, это будет лучшим выбором.

Ваш другой вариант был бы валидным XMLHttpRequest. Я заглянул в документацию Netatmo и, похоже, это должно работать

function getNetatmoData(){ 
var clientId = "******"; 
var clientSecret = "******"; 

var userId="******@******.com"; 
var parola="******"; 
var formUserPass = { client_id: clientId, 
    client_secret: clientSecret, 
    username: userId, 
    password: parola, 
    scope: 'read_station', 
    grant_type: 'password' }; 
var req = new XMLHttpRequest(); 
req.open('POST',"https://api.netatmo.net/oauth2/token", false); 
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8"); 

req.onload = function (e) { 
    if (req.status == 200) { 

     console.log('http request was successful', req.response) 
    } 
    else if (req.status == 400) { 
     console.log('There was an error') 
    } 
    else { 
     console.log('There was something else that went wrong') 
    } 
} 
req.onerror = function (e) { 
    // Do something about the error 
    console.log("There was an error", req.response); 
} 
req.send(formUserPass); 
} 
+0

благодарит за отзыв! Попробуй и вернись к тебе! –

Смежные вопросы