Используя Polymer 1.0, я ищу наилучший подход к отображению логина для пользователя, когда приложение получает 401 из сервисов приложений.Отвечая глобально на 401 in Polymer
Использование углового Я бы посмотрел на использование httpInterceptor, чтобы сделать это, есть ли эквивалент в Polymer?
Вот подход, который явно перенаправляет ошибки от элемента обслуживания (с использованием железо-АЯКС)
<template is="dom-bind" id="app">
<values-service values="{{items}}" on-error="onError"></values-service>
<h1>Items <span>{{items}}</span></h1>
<template is="dom-repeat" items="{{items}}">
<p>{{item}}</p>
</template>
</template>
<script src="app.js"></script>
и мое приложение сценария
(function (document) {
'use strict';
var app = document.querySelector('#app');
app.onError = function (e) {
console.log('app.onError ' + e.detail.request.status);
};
app.addEventListener('error', app.onError);
})(document);
это работает, но как логин является то, что я хочу чтобы произойти без необходимости подключения элементов конкретно
Единственным недостатком этого является то, что 401 проверок должны быть в каждом обратном вызове; много дублированного и, возможно, хрупкого кода, когда у вас их достаточно. Вы можете использовать одну и ту же систему, если вы обернете элемент value-service в новый элемент, который ищет 401s, и огнетует события, названные 401 явно. – newfivefour
401's управляется моим api –
Этот подход означает, что дублирования нет, в корне есть только один обработчик 401. Так что, как вы описали –