我目前正在尝试学习HTML和Java EE Servlet编程.我在我的本地计算机(Orion Application Server)上运行了一个应用程序服务器,并且我使用在同一台计算机上运行的浏览器连接到我在此服务器上部署的网页,并指向http://localhost/mypage.htm(例如).
我知道W3C有一个可以访问的站点,它将验证HTML页面(并计算给定doctype的错误数量),但这必须是一个公开的URL.如何像我上面描述的那样在本地运行的设置上验证HTML?
我已经编写了一个小型rails应用程序,通过xmlhttprequests向另一个站点提供内容,这些站点将在另一个域上运行(无法让它们在同一台服务器上运行).我知道我需要在我的rails服务器上设置access-control-allow-origin,以允许请求的网页访问这些资料.
似乎有很好的文档说明如何使用Apache,这可能是我部署网站后将使用的服务器.虽然我正在开发,但我希望只使用webrick,因为我习惯使用rails.有没有办法配置webrick以在rails中提供适当的http标头?
我不清楚为什么在nomodule支持ES6模块的新浏览器中存在该属性.
在HTML 5中,该type属性是可选的,默认为text/javascript:
type属性提供脚本的语言或数据的格式.如果该属性存在,则其值必须是有效的MIME类型.不得指定charset参数.如果属性不存在,则使用默认值"text/javascript".
它不默认<script type="module" src="module.js"></script>.此默认值已更改?如果没有,为什么nomodule有必要?我可以<script src="bundle.js"></script>不用nomodule吗?
我试图了解CORS.根据我的理解,它是一种在浏览器中实现的安全机制,以避免除了用户打开的域之外的任何ajax请求(在url中指定)
现在,由于这种限制,实施了许多CORS以使网站能够进行跨源请求.但根据我的理解,实施CORS违反了"同源政策" SOP的安全目的
CORS只是为了提供对请求服务器想要服务的额外控制.也许它可以避免垃圾邮件发送者
来自维基百科:
要启动跨源请求,浏览器会使用Origin HTTP标头发送请求.此标头的值是为页面提供服务的站点.例如,假设http://www.example-social-network.com上的页面 试图访问online-personal-calendar.com中的用户数据.如果用户的浏览器实现了CORS,则会发送以下请求标头:
来源:http://www.example-social-network.com
如果online-personal-calendar.com允许请求,它会在其响应中发送一个Access-Control-Allow-Origin标头.标头的值指示允许的源站点.例如,对先前请求的响应将包含以下内容:
Access-Control-Allow-Origin:http://www.example-social-network.com
如果服务器不允许跨源请求,则浏览器将向example-social-network.com页面而不是online-personal-calendar.com响应发送错误.
要允许访问所有页面,服务器可以发送以下响应头:
Access-Control-Allow-Origin:*
但是,这可能不适合担心安全问题的情况.
我在这里失踪了什么?CORS保护服务器与保护客户端安全的意图是什么.
我正在使用HTML5通知API在Chrome或Firefox中通知用户.在桌面浏览器上,它可以工作.但是,在Chrome 42 for Android中,请求了权限,但未显示通知本身.
请求代码适用于所有设备:
if ('Notification' in window) {
Notification.requestPermission();
}
Run Code Online (Sandbox Code Playgroud)
发送代码适用于桌面浏览器,但不适用于移动设备:
if ('Notification' in window) {
new Notification('Notify you');
}
Run Code Online (Sandbox Code Playgroud) javascript html5 notifications google-chrome web-notifications
我刚刚阅读了HTML5作者规范.它声明<html>,<head>和<body>标签是可选的.这是否意味着您可以将它们完全保留并且仍然具有有效的HTML5文档?
如果我正确地解释这个,这意味着这应该是完全有效的:
<!DOCTYPE html>
<p>Hello!</p>
Run Code Online (Sandbox Code Playgroud)
它是否正确?
你可以在这里查看规范:
http://dev.w3.org/html5/spec-author-view/syntax.html#syntax
"8.1.2.4可选标签"是可以省略的<html>,<head>并且<body>
我正在尝试使用以下命令使用最新的py2exe版本0.9.2.2编译我的python 3.5文件:
py -3.5 -m py2exe.build_exe myscript.py
Run Code Online (Sandbox Code Playgroud)
但它报告了这个:
在... lib\site-packages\py2exe \文件夹中找不到"run-py3.5-win-amd64.exe"文件.
这是否意味着py2exe 0.9.2.2只兼容python 3.4?
我刚刚完成了Hello World Google Cloud Functions教程并收到了以下响应标头:
Connection ? keep-alive
Content-Length ? 14
Content-Type ? text/plain; charset=utf-8
Date ? Mon, 29 Feb 2016 07:02:37 GMT
Execution-Id ? XbT-WC9lXKL-0
Server ? nginx
Run Code Online (Sandbox Code Playgroud)
如何添加CORS标头以便能够从我的网站调用我的功能?
我有一个ASP.NET MVC 5 webproject(localhost:81),它使用Knockoutjs从我的WebApi 2项目(localhost:82)调用函数,以便在我启用CORS的两个项目之间进行通信.到目前为止,一切都有效,直到我尝试对WebApi实施OWIN令牌认证.
要在WebApi上使用/ token端点,我还需要在端点上启用CORS,但经过几个小时的尝试和搜索解决方案后,它仍在运行,并且api/token仍然会导致:
XMLHttpRequest cannot load http://localhost:82/token. No 'Access-Control-Allow-Origin' header is present on the requested resource.
public void Configuration(IAppBuilder app)
{
app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
TokenConfig.ConfigureOAuth(app);
...
}
Run Code Online (Sandbox Code Playgroud)
TokenConfig
public static void ConfigureOAuth(IAppBuilder app)
{
app.CreatePerOwinContext(ApplicationDbContext.Create);
app.CreatePerOwinContext<AppUserManager>(AppUserManager.Create);
OAuthAuthorizationServerOptions OAuthServerOptions = new OAuthAuthorizationServerOptions()
{
AllowInsecureHttp = true,
TokenEndpointPath = new PathString("/token"),
AccessTokenExpireTimeSpan = TimeSpan.FromDays(1),
Provider = new SimpleAuthorizationServerProvider()
};
app.UseOAuthAuthorizationServer(OAuthServerOptions);
app.UseOAuthBearerAuthentication(new OAuthBearerAuthenticationOptions());
}
Run Code Online (Sandbox Code Playgroud)
AuthorizationProvider
public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
{
context.OwinContext.Response.Headers.Add("Access-Control-Allow-Origin", new[] { "*" });
var appUserManager = context.OwinContext.GetUserManager<AppUserManager>(); …Run Code Online (Sandbox Code Playgroud) 我想通过提取发送一个帖子请求,但它不起作用.
但是,如果我通过jQuery ajax做到这一点,它就会成功.
我想知道这两种方式的区别,如果我在这里使用fetch有什么问题:
fetch('http://localhost:8888/news',{
method:"post",
data:"code=7&a=8&b=9"
}).then(function(data){
data.json().then(function (json) {
}
Run Code Online (Sandbox Code Playgroud) cors ×4
html5 ×4
ajax ×3
html ×3
javascript ×2
cross-domain ×1
ecmascript-6 ×1
es6-modules ×1
fetch-api ×1
jquery ×1
localhost ×1
owin ×1
py2exe ×1
python-3.5 ×1
validation ×1
webrick ×1