我是新手和初学者,根据我的需要通过搜索和编辑从互联网上获得了一些代码,但现在我想将 html 形式的数据条目保存到 data.csv 文件中,当我点击提交按钮时,它应该将内容保存到数据中.csv 在每次点击提交按钮的新行中。这个 html 代码我只在本地计算机上运行。我不知道我怎么知道这里是 MWE。提前感谢您的任何帮助
<html>
<head>
<script type="text/javascript" src="validate.js"></script>
</head>
<body>
<form action="#" name="StudentRegistration" onSubmit="return(validate());">
<table cellpadding="2" width="20%" bgcolor="99FFFF" align="center"
cellspacing="2">
<tr>
<td colspan=2>
<center><font size=4><b>Student Registration Form</b></font></center>
</td>
</tr>
<tr>
<td>Name</td>
<td><input type=text name=textnames id="textname" size="30"></td>
</tr>
<tr>
<td>Father Name</td>
<td><input type="text" name="fathername" id="fathername"
size="30"></td>
</tr>
<tr>
<td>Postal Address</td>
<td><input type="text" name="paddress" id="paddress" size="30"></td>
</tr>
<tr>
<td>Personal Address</td>
<td><input type="text" name="personaladdress"
id="personaladdress" size="30"></td>
</tr>
<tr>
<td>Sex</td>
<td><input type="radio" name="sex" value="male" size="10">Male
<input type="radio" name="sex" …Run Code Online (Sandbox Code Playgroud) 我有一个使用.net core 2.2 的Web API 项目(也许存在问题。)
这些路由正在等待 OpenIdDict 的 OAuth 授权,但这对我来说完全没问题。我正在尝试一种非常简单的方法:
startup.cs 仅包含:
services.AddApiVersioning();
Run Code Online (Sandbox Code Playgroud)
API 控制器具有三种不同的路由用于测试目的。请注意,控制器本身没有 [Route()] 或 [ApiVersion()] 注释。
[HttpGet]
[Authorize]
[ApiVersion("2.0")]
[Route("api/v{version:apiVersion}/vt")]
public IActionResult GetVt20()
{
return Ok("2.0");
}
[HttpGet]
[Authorize]
[ApiVersion("1.0")]
[Route("api/v{version:apiVersion}/vt")]
public IActionResult GetVt10()
{
return Ok("1.0");
}
Run Code Online (Sandbox Code Playgroud)
如果我执行授权请求,例如
http://localhost:27713/api/v1.0/vt
Run Code Online (Sandbox Code Playgroud)
.net core 用 BadRequest 回答:
{"error":{"code":"UnsupportedApiVersion","message":"The HTTP resource that matches the request URI 'http://localhost:27713/api/v1.0/vt' does not support the API version '1.0'.","innerError":null}}
Run Code Online (Sandbox Code Playgroud)
我缺少什么?
我有一个使用 OpenIddict 的 .NET Core 2.1 Web API 项目。
TLDR:按照此处给出的示例,我需要用于执行注销请求以使一个用户的刷新令牌和访问令牌无效/注销的示例。
长版:
它涉及多个 API 用户使用用户名和密码检索访问令牌 + 刷新令牌。我正在寻找一种可能性,可以使具有有效访问/刷新令牌的特定 API 用户的两个令牌失效/注销。
我在尝试编写一条用于使用单个用户的当前刷新令牌“注销”访问令牌和刷新令牌的路线时迷失了。
我们不使用 SignInManager。我在网上看到了几个例子。但我没有找到任何与我们简单的内存方法相匹配的东西。TokenManager 没有 SignOut 方法。
Startup.cs 上的 ConfigureServices() 部分如下所示:
services.AddDbContext<DbContext>(options =>
{
options.UseInMemoryDatabase(nameof(DbContext));
options.UseOpenIddict();
});
services.AddOpenIddict().AddCore(options =>
{
options.UseEntityFrameworkCore().UseDbContext<DbContext>();
});
services.AddOpenIddict().AddServer(options =>
{
options.UseMvc();
options.EnableTokenEndpoint("/api/token").EnableLogoutEndpoint("/api/logout");
options.AllowPasswordFlow();
options.AllowRefreshTokenFlow();
options.SetAccessTokenLifetime(TimeSpan.FromSeconds(60 * 60));
options.SetRefreshTokenLifetime(TimeSpan.FromSeconds(7 * 24 * 60 * 60));
options.RegisterScopes(OpenIdConnectConstants.Scopes.OfflineAccess);
options.DisableHttpsRequirement();
options.UseRollingTokens();
options.AcceptAnonymousClients();
});
services.AddOpenIddict().AddValidation();
services.AddAuthentication(options =>
{
options.DefaultScheme = OAuthValidationDefaults.AuthenticationScheme;
});
Run Code Online (Sandbox Code Playgroud)
检索访问令牌和使用刷新令牌工作得很好。
但是我在注销路由中使用什么?
[HttpGet]
[Route("/api/logout")]
public async Task<IActionResult> LogoutAsync(OpenIdConnectRequest logoutRequest) …Run Code Online (Sandbox Code Playgroud) 我安装了最新的(2015-02-03)MASShortcut作为CocoaPod以及一个非常基本的OS X Swift应用程序的正确桥接头.我最终得到了以下代码,我不知道我做错了什么?:
import Cocoa
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {
@IBOutlet weak var window: NSWindow!
func callback() {
NSLog("callback")
}
func applicationDidFinishLaunching(aNotification: NSNotification) {
let keyMask = NSEventModifierFlags.CommandKeyMask | NSEventModifierFlags.AlternateKeyMask
let shortcut = MASShortcut.shortcutWithKeyCode(kVK_Space, modifierFlags: UInt(keyMask.rawValue))
MASShortcut.addGlobalHotkeyMonitorWithShortcut(shortcut, handler: callback)
}
func applicationWillTerminate(aNotification: NSNotification) {
// Insert code here to tear down your application
}
}
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我有一个基于 .net core 2.0 的 web api 项目。
我几乎遵循了http://kevinchalet.com/2017/01/30/implementing-simple-token-authentication-in-aspnet-core-with-openiddict/上的非常好的例子。
返回身份验证的 SignIn() 结果的代码。方法看起来像这样:
if (request.IsPasswordGrantType())
{
// (...)
if (useraccount != null && useraccount.Failcount <= AppConstants.AuthMaxAllowedFailedLogin)
{
var identity = new ClaimsIdentity(OpenIdConnectServerDefaults.AuthenticationScheme, OpenIdConnectConstants.Claims.Name, OpenIdConnectConstants.Claims.Role);
identity.AddClaim(OpenIdConnectConstants.Claims.Subject, AppConstants.AuthSubjectClaim, OpenIdConnectConstants.Destinations.AccessToken);
identity.AddClaim(OpenIdConnectConstants.Claims.Name, useraccount.Username, OpenIdConnectConstants.Destinations.AccessToken);
return SignIn(new ClaimsPrincipal(identity), OpenIdConnectServerDefaults.AuthenticationScheme);
}
// (...)
}
Run Code Online (Sandbox Code Playgroud)
我的启动代码如下所示:
services.AddDbContext<DbContext>(options =>
{
options.UseInMemoryDatabase(nameof(DbContext));
options.UseOpenIddict();
});
services.AddOpenIddict(options =>
{
options.AddEntityFrameworkCoreStores<DbContext>();
options.AddMvcBinders();
options.EnableTokenEndpoint(DcpConstants.ApiTokenRoute);
options.AllowPasswordFlow();
options.AllowRefreshTokenFlow();
options.SetAccessTokenLifetime(TimeSpan.FromHours(1));
options.SetRefreshTokenLifetime(TimeSpan.FromDays(1));
options.DisableHttpsRequirement();
});
services.AddAuthentication(options =>
{
options.DefaultScheme = OAuthValidationDefaults.AuthenticationScheme;
}).AddOAuthValidation();
Run Code Online (Sandbox Code Playgroud)
现在,当我使用以下参数发送 post 请求时:
username: foo@bar.com …Run Code Online (Sandbox Code Playgroud)