Geral
Desenvolvimento WEB COM320
Semana 5
0

Questão

Considere o seguinte enunciado sobre aplicações web RESTful aplicadas à web: o estilo arquitetural de Representational State Transfer (REST) tem sido amplamente adotado no desenvolvimento de aplicações web. REST é baseado em princípios simples e utiliza os verbos HTTP para criar uma interface padronizada para comunicação entre cliente e servidor. Uma aplicação web RESTful expõe recursos como URLs e permite a realização de operações básicas (CRUD— Create, Read, Update, Delete) sobre esses recursos.


Considerando esse contexto, assinale a alternativa que descreve corretamente uma das características das aplicações web RESTful.

A)

As aplicações RESTful são restritas à comunicação cliente-servidor, não permitindo a interação entre diferentes serviços web.

B)

As aplicações RESTful exigem a utilização do protocolo SOAP (Simple Object Access Protocol) para realizar operações sobre os recursos.

C)

As aplicações RESTful não permitem a representação dos recursos por meio de diferentes formatos, como JSON e XML.

D)

As aplicações RESTful utilizam exclusivamente o método GET do protocolo HTTP para todas as operações.

E)

As aplicações RESTful permitem a utilização de qualquer verbo HTTP (GET, POST, PUT, DELETE) para manipulação dos recursos.

function vote(questaoId, value) { window.location.href = "/accounts/login/?next=/questao/3175/"; return; fetch(`/vote/questao/${questaoId}/`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-CSRFToken': 'bobe1gaqlv04FYXhjKUbB0V6oPgwmKsPSQsW7zamnp7hOf9crA2ntrJl9QLUXNk4' }, body: JSON.stringify({ value: value }) }) .then(response => response.json()) .then(data => { if (data.success) { document.getElementById(`score-${questaoId}`).textContent = data.score; const upBtn = document.querySelector(`button[onclick="vote(${questaoId}, 1)"]`); const downBtn = document.querySelector(`button[onclick="vote(${questaoId}, -1)"]`); upBtn.classList.remove('active-up'); downBtn.classList.remove('active-down'); if (data.user_vote === 1) upBtn.classList.add('active-up'); if (data.user_vote === -1) downBtn.classList.add('active-down'); } }); }