Статьи

Игра с API Parse.com

 

Снимок экрана 2013-10-23 в 9.29.51 PM

Я начал использовать API Parse.com не более недели назад и уже влюбился в него. Первое, что поразило меня, было: «Вау, никакой дополнительной работы по хранению объектов в моей базе данных», и это действительно так. Сохранение данных никогда не было проще. JavaScript API Parse.com, документация очень хорошая, и она поможет вам начать свой проект в кратчайшие сроки. Помимо погружения в детали, позвольте мне выделить еще одну интересную особенность API Parse.com. Это управление пользователями. Зарегистрировать кого-то или позволить кому-то войти в систему, подтвердить свою электронную почту? Все есть!

«Нуфф сказал, как начать?

Перейдите на https://parse.com/apps , зарегистрируйте новое приложение и скопируйте ключ приложения и ключ JavaScript.

Теперь откройте ваш HTML-файл, добавьте js-библиотеку Parse.com

<script type="text/javascript" src="http://www.parsecdn.com/js/parse-1.2.12.min.js"></script>

и теперь инициализируйте ваше приложение Parse.com

Parse.initialize("Application ID", "Javascript Key");

Вот и все. Теперь вы готовы поиграть с остальной частью этой статьи.

Зарегистрируйся, Пронто!

Одной из самых утомительных и скучных работ при разработке приложения является работа с регистрацией, проверкой электронной почты, ACL и заботой о процессе входа в систему. С API Parse.com это довольно просто. Чтобы зарегистрировать нового пользователя, все, что вам нужно сделать, это следующий!

var user = new Parse.User();
user.set("username", "ElMacho");
user.set("password", "chicken");
user.set("email", "el@macho.name");
 
user.signUp(null, {
  success: function(user) {
    // Everything's done!
    console.log(user.id);
  },
  error: function(user, error) {
    alert("Error: " + error.code + " " + error.message);
  }
});

Ваш пользователь зарегистрирован! Если вам нужно проверить электронную почту пользователя, войдите в свою панель инструментов Parse.com и в разделе настроек вашего приложения включите проверку электронной почты. Это просто.

Хорошо, впусти меня!

Хорошо, ваши пользователи зарегистрировались. Теперь дайте им войти. Просто написать сценарий входа с помощью Parse API

Parse.User.logIn("ElMacho", "chicken", {
  success: function(user) {
    console.log(user.get("email"));
  },
  error: function(user, error) {
    console.log("you shall not pass!");
  }
});

Но эй, пользователь должен входить в систему каждый раз? Нет, совсем нет. Зарегистрированное состояние пользователя сохраняется в браузере. Поэтому, прежде чем пытаться войти в него / нее снова, вы можете проверить, если он уже вошел в систему.

var loggedInUser = Parse.User.current();
if(!loggedInUser){
    //off you go, perform a log in
} else {
    console.log(loggedInUser.get("email"));
}

легко, а?

Интересно, как я могу справиться с данными?

Хорошо, достаточно с подпиской и входом. Позволяет сохранить некоторые данные. Например, мы хотим хранить любимые книги пользователя в хранилище данных Parse.com. Мы также получим список позже.

Чтобы сохранить некоторые данные в Parse.com, нам нужно написать такой код

var user = Parse.User.current();
var Book = Parse.Object.extend("favoritebooks");
var b1 = new Book({"name":"King Solomon's Mine","user":user});
b1.save();
 
var b2 = new Book({"name":"Return of She","user":user});
b2.save();

При сохранении объекта вы также можете позаботиться об ошибке или состоянии успеха.

var b1 = new Book({"name":"King Solomon's Mine","user":user});
b1.save(null, {
    success:function(b){
        console.log("successfully saved")
    },
    error:function(b,error){
        console.log(error.message);
    }
});

Вы можете сохранить столько книг / данных, сколько захотите, и связать их с текущим пользователем. Подобные ссылки полезны для получения их в будущем. Поскольку у нас есть несколько сохраненных записей, давайте потянем их и посмотрим, действительно ли они сохранены.

var Book = Parse.Object.extend("favoritebooks");
var q = new Parse.Query(Book);
q.equalTo("user",user);
q.find({
  success: function(results){
    for(i in results){
      var book = results[i];
      console.log(book.get("name"));
    }
  }
});

После того, как он запустится, вы увидите, что он выводит в данный момент зарегистрированные любимые книги пользователя. Довольно аккуратно, а?

Как и в случае с equalTo, существует множество полезных ограничений, которые вы можете использовать в своем запросе. Вы можете получить полный список по адресу https://parse.com/docs/js_guide#queries-constraints . Документация Parse.com довольно солидная, и вы найдете там почти все.

Время обеда, выйди из меня!

Просто, просто вызовите Parse.User.logOut () и все готово!

Так это просто об управлении пользователями и сохранении данных?

Нет, совсем нет! Но сохранение данных и управление учетными данными + ACL — одна из самых классных функций, которую вы можете сделать с помощью API Parse.com. Помимо хранилища этих объектов вы можете разместить свое приложение (на основе ExpressJS), вы можете запускать свой код в облаке (фоновое задание, облачный код), заботиться о push-уведомлениях и даже загружать и хранить двоичные файлы.

В целом, API Parse.com очень крутой. Попробуйте сегодня, вам обязательно понравится. И, кстати, в панели инструментов вашего приложения есть очень удобный браузер данных, используйте его!