Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Взаимодействие с Web-сервисом



Если необходимо найти что-нибудь, что известно социальнойсети о каком-нибудь пользователе, зная ID этого пользователя, можно выполнить запрос к API-интерфейсу социальной сети по URL.

Пример с Facebook:

http : // graph . facebook . com / pivotalsoftware

Если требуется запрос из браузера или curl, то получится JSON документ, который весьма не удобен. Более полезный способ взаимодействия с REST web-сервисом является программный. Для решения этой задачи, Spring предоставляет удобный шаблонный класс RestTemplate. RestTemplate осуществляет взаимодействие с большинством RESTful сервисами однострочным заклинанием. И он может даже привести данные к пользовательским типам.

Для начала, вы создаете класс, который содержит необходимую информацию. Если необходимо знать имя, номер телефона, URL-адрес и другую информацию, то необходимо использовать представленный класс:

@JsonIgnoreProperties(ignoreUnknown = true)

public class Page { private String name;

private String about;

private String phone;

private String website;

public String getName() {

   return name;

}

public String getAbout() {

   return about;

}

 

public String getPhone() {

   return phone;

}

 

public String getWebsite() {

   return website;

}

 

}

Это Java класс с полями и распространяет их получения. Он содержит аннотацию @JsonIgnoreProperties библиотеки обработки JSON Jackson, которая показывает, что любые поля, не связанные с полями класса, должны быть проигнорированы.

Безопасность Web -приложения

Приложение включает два простых представления: домашнюю страницу и "Hello World" страницу. Домашняя страница предствлена как Thymeleaf шаблон:

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3">

<head>

   <title>Spring Security Example</title>

</head>

<body>

   <h1>Welcome!</h1>

 

   <p>Click <a th:href="@{/hello}">here</a> to see a greeting.</p>

</body>

</html>

Как можно увидеть, это приложение включает ссылку на страницу "/hello", которая представлена как шаблон.

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"

xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3">

<head>

   <title>Hello World!</title>

</head>

<body>

   <h1>Hello world!</h1>

</body>

</html>

Приложение основано на Spring MVC. То есть необходимо настроить Spring MVC и контроллеры представлений для отображения этих шаблонов. Конфигурационный класс для настройки Spring MVC в приложении:

 

import org.springframework.context.annotation.Configuration;

import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;

import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

 

@Configuration

public class MvcConfig extends WebMvcConfigurerAdapter {

 

@Override

public void addViewControllers(ViewControllerRegistry registry) {

   registry.addViewController("/home").setViewName("home");

   registry.addViewController("/").setViewName("home");

   registry.addViewController("/hello").setViewName("hello");

   registry.addViewController("/login").setViewName("login");

}

 

}

Метод addViewControllers(), добавляет четыре контроллера. Двое из них настроены на представление с именем "home"(home.html), другой настроен на "hello". Четвертый контроллер настроен на представление с названием "login".

Всё это позволит создать приложения исполняемым и запустить их без входа в систему.

 

 



Java Spring Social

Проект Java Spring-Social призван упростить создание приложений интегрированных с различными социальными сетями.

Функции Spring-Social:

· Набор template-ов для работы с различными «социальными» сервисами;

· Request Factory подписывающая запросы к сервисам (специальным для OAuth способом);

· Автоматическое «доставание» параметра «Facebook Id» для его последующей передачи в SpringMVC контроллер.

 


Поделиться:



Последнее изменение этой страницы: 2019-04-01; Просмотров: 206; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.011 с.)
Главная | Случайная страница | Обратная связь