当前位置: 首页 > news >正文

网站容量一个虚拟空间做两个网站

网站容量,一个虚拟空间做两个网站,app下载安装注册,网站建设 乐达云创一:错误出现 这个错误的意思是,拒绝将字符串评估为 JavaScript,因为‘unsafe-eval’不是以下内容安全策略中允许的脚本源。 二:错误场景 testEval() {const data eval("var sum2 new Function(a, b, return a b); sum2(em…

一:错误出现

这个错误的意思是,拒绝将字符串评估为 JavaScript,因为‘unsafe-eval’不是以下内容安全策略中允许的脚本源。

二:错误场景

testEval() {const data = eval("var sum2 = new Function('a', 'b', 'return a + b'); sum2('email', 'eval');");const sum = new Function('a', 'b', 'return a + b');console.log('test eval:', data);}

类似的不安全的表达式还有:

  1. eval()
  2. Function() ——When passing a string literal like to methods like: setTimeout("alert(\"Hello World!\");", 500);
  3. setTimeout()
  4. setInterval()
  5. window.setImmediate
  6. window.execScript() (IE < 11 only)

三,错误原因

因为我的安全策略(CSP)白名单中并不包含‘unsafe-eval’这个选项。所以抛出了异常。

不包含‘unsafe-eval’的理由是eval 实际上是不安全的。 它在每种语言中的意思是“获取这个字符串并执行它的代码”。 也就是说eval本质是将字符串转成表达式并执行。容易遭到注入攻击。

四,错误解决

1尽量避免使用eval方法,大多数情况下,eval方法是可以被避免的。可以使用lint检查项目中是否含有eval方法 no-eval - ESLint - Pluggable JavaScript Linter

上述的代码可以这样更改,代码正常工作

testEval(): string {const sum1: Function = (a: string, b: string) => { return a + b };return sum1('test', 'eval');}

2如果有时候,必须动态生成方法,这部分工作可以放到服务端完成。而不是把‘unsafe-eval’加入到CSP白名单中。

上述代码还可以这样更改,代码正常工作

testEvalSolutionTwo(): Observable<Object> {return this.http.get(this.rootURL + '/test/eval');}

五,CSP的配置补充

CSP可以在三个地方配置

1:拦截器

import { requestInterceptor } from './http/request.intercepter';
@NgModule({.. .. ..providers: [{provide: HTTP_INTERCEPTORS,useClass: requestInterceptor,multi: true}],bootstrap: [AppComponent]
})
export class AppModule { }import { Injectable } from '@angular/core';
import { HttpInterceptor, HttpHandler, HttpRequest, HttpEvent } from '@angular/common/http';
import { Observable } from 'rxjs';@Injectable()
export class requestInterceptor implements HttpInterceptor {constructor() {}intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {req.headers.append('Content-security-policy', `script-src 'self';`);return next.handle(req);}
}

2:html文件

<meta http-equiv="Content-Security-Policy" content="default-src 'self'; child-src 'none';">

3:server端(推荐)

app.use(function (req, res, next) {res.setHeader('Content-security-policy',`script-src 'self';` +`connect-src 'self';`,);next();
});

CSP文档参见:CSP: script-src - HTTP | MDN

http://www.yayakq.cn/news/617159/

相关文章:

  • 建设网站建站公司家居设计案例
  • 绣花图案设计网站爱用建站正规吗
  • 常宁做网站建设网站的必要与可行性
  • 漳州手机网站开发广州网站优化地址
  • 网站各个阶段推广公司网站建设7个基本流程
  • 网站要怎么样做排名才上得去深圳网络营销网站
  • 建设美食网站公司seo营销
  • 做民宿注册的网站国家数据统一共享开放平台
  • 出版社网站建设方案站长网站建设
  • 汉川建设局网站沂南网站优化
  • dede网站源码 如何公司起名字大全免费2个字
  • 美工在网站建设中的作用项目外包是什么意思
  • 怎么用手机网站做软件好获客渠道有哪些
  • 360网站安全检测网站需求分析怎么写
  • 网站界面设计案例分析装修公司的选择方法
  • 同性男做性视频网站为什么我的网站百度搜不到
  • 网站建设服务费怎么做会计分录wordpress自建主题
  • 无锡网站制作企业谷歌竞价排名推广公司
  • app开发网站公司外贸网站开发推广
  • 丰功网站建设洛阳制作网站哪家好
  • 素材网免费下载山西seo关键词优化软件搜索
  • xx企业网站建设方案书办公空间设计案例整套
  • 金顶街网站建设注册公司需要少钱
  • 广东专业网站优化公司浏览器收录网站
  • 怎么做贝店式的网站百度统计怎么使用
  • 网站网站设计的公司智林东莞网站建设公司
  • 微做网站中国建设部门官方网站
  • 兼职做商务标哪个网站杭州网站建设h5
  • 网站怎么做关键词搜索排面郑州全平台广告推广
  • 手机商城网站案例网站建设项目招标标书