小编Ahm*_*der的帖子

如何在.NetCore API中的不同应用程序上验证从一个应用程序发出的AntiForgeryToken?

我有两个应用程序,ASP.NET Core Web APP(应用程序1)和.NET CORE API(应用程序2)。我在(应用程序 1)中发出 AntiForgeryToken 并将其以隐藏字段的形式返回(实际上 .netcore 自动生成)。现在,当用户提交表单时,数据将转到(应用程序 2)并使用 CORS,我能够将(应用程序 1)发出的 AntiForgeryToken 的 cookie 发送到(应用程序 2),以便我可以验证它并在(应用程序 2)上进行验证添加了 validateAntiFOrgeryToken 属性,以便我可以验证它。下面是我在 chrome 开发工具响应选项卡上收到的错误。

\n\n

我尝试了一切并搜索了所有内容,但这个特定错误无法找到答案。

\n\n
System.InvalidOperationException: No service for type \'Microsoft.AspNetCore.Mvc.ViewFeatures.Filters.ValidateAntiforgeryTokenAuthorizationFilter\' has been registered.\n   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(IServiceProvider provider, Type serviceType)\n   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService[T](IServiceProvider provider)\n   at Microsoft.AspNetCore.Mvc.ValidateAntiForgeryTokenAttribute.CreateInstance(IServiceProvider serviceProvider)\n   at Microsoft.AspNetCore.Mvc.Filters.DefaultFilterProvider.ProvideFilter(FilterProviderContext context, FilterItem filterItem)\n   at Microsoft.AspNetCore.Mvc.Filters.DefaultFilterProvider.OnProvidersExecuting(FilterProviderContext context)\n   at Microsoft.AspNetCore.Mvc.Filters.FilterFactory.CreateUncachedFiltersCore(IFilterProvider[] filterProviders, ActionContext actionContext, List`1 filterItems)\n   at Microsoft.AspNetCore.Mvc.Filters.FilterFactory.GetAllFilters(IFilterProvider[] filterProviders, ActionContext actionContext)\n   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvokerCache.GetCachedResult(ControllerContext controllerContext)\n   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvokerProvider.OnProvidersExecuting(ActionInvokerProviderContext context)\n   at Microsoft.AspNetCore.Mvc.Infrastructure.ActionInvokerFactory.CreateInvoker(ActionContext actionContext)\n   at Microsoft.AspNetCore.Mvc.Routing.ActionEndpointFactory.<>c__DisplayClass7_0.<CreateRequestDelegate>b__0(HttpContext context)\n   at …
Run Code Online (Sandbox Code Playgroud)

cross-domain asp.net-core-mvc .net-core asp.net-core asp.net-core-webapi

3
推荐指数
1
解决办法
3517
查看次数

这在oop java中是如何工作的?

这段代码正确地与我合作,但是这是怎么回事?我是如何制作4个JMenu同名的对象(菜单)?我需要理解即使它有效,这段代码是编写代码的好方法还是更好?

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;

public class Window extends JFrame {

    private static final String TITLE = "DevTools";
    private static final int WIDTH = 800;
    private static final int HEIGHT = 600;

    private JMenuBar menubar;
    private JMenu menu;
    private JMenuItem menuitem;
    private String[] menu_titles = {"File", "Edit", "Diagrams", "Help"};

    public Window(){
        init();
        createMenu();
    }

    public void init(){
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
        this.setExtendedState(MAXIMIZED_BOTH);
        this.setResizable(true);
        this.setSize(WIDTH, HEIGHT);
        this.setLocationRelativeTo(null);
        this.setTitle(TITLE);
    }

    public void createMenu(){
        menubar = new JMenuBar();
        setJMenuBar(menubar);

        for(int …
Run Code Online (Sandbox Code Playgroud)

java oop

1
推荐指数
1
解决办法
76
查看次数