如何通过ngx-admin / Nebular应用中的GraphQL API进行身份验证?
我发现可用的AuthStrategy
类是有限的,并且没有直接的方法来更改其行为。最接近的是NbPasswordAuthStrategy
,它发出HTTP请求,但是我还没有弄清楚如何将它与GraphQL API一起使用。
答案 0 :(得分:0)
目前,无法立即使用通过GraphQL
进行的身份验证。要解决该问题,您需要创建一个NbPasswordAuthStrategy
之类的新策略,但是您的新策略将向GraphQL
客户(而不是原告HttpClient
)发出请求。
答案 1 :(得分:0)
作为一种通过GraphQL API获得身份验证的解决方法,我将 public partial class viewHistoricMessages : UserControl
{
public viewHistoricMessages()
{
InitializeComponent();
///this is where my XAML code for the combobox is.
}
}
public class vmHistoricMessages : clsViewModelBase
{
public void UpdateListViewContent()
{
try
{
if (_dtMessages == null)
_dtMessages = new Gain.Database.dsMessages.spMessages_GetHistoric2DataTable();
if (_taMessages == null)
_taMessages = new Gain.Database.dsMessagesTableAdapters.spMessages_GetHistoric2TableAdapter();
int msgtype = int.Parse((MsgType_Combo.SelectedItem as ComboBoxItem).Tag as string);
_dtMessages = _taMessages.GetData( Gain.HmiControls.global.LanguageId, msgtype, StartDate, EndDate, 0, 600);
NotifyPropertyChanged(nameof(Alarms));
}
catch
{
}
private void Button_Click_Update(object sender)
{
UpdateListViewContent();
}
}
子类化并覆盖了combobox MsgType_Combo
方法,将适当的GraphQL请求有效载荷传递给vmHistoricMessages : clsViewModelBase
,例如:>
NbLoginComponent