From efce01e853b7087aceafa1a005b641828912feff Mon Sep 17 00:00:00 2001 From: gqqnbig Date: Sun, 15 Jul 2018 10:31:26 -0700 Subject: [PATCH 01/24] =?UTF-8?q?=E6=A3=80=E6=B5=8B=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E6=83=85=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- uMatrixCleaner/Program.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/uMatrixCleaner/Program.cs b/uMatrixCleaner/Program.cs index fcf5308..11d873c 100644 --- a/uMatrixCleaner/Program.cs +++ b/uMatrixCleaner/Program.cs @@ -271,6 +271,12 @@ private static bool ParseOptions(string[] args) return true; } + if (argList.Count == 0) + { + logger.LogError("至少存在1个位置参数,而实际发现0个。"); + return true; + } + if (argList.Count > 2) { logger.LogError("最多支持2个位置参数,而实际发现{0}个:{1}", argList.Count, string.Join(" ", argList)); From 7a162ffe02a8c91521b8839082c88ebcbdd69990 Mon Sep 17 00:00:00 2001 From: gqqnbig Date: Sun, 15 Jul 2018 10:31:46 -0700 Subject: [PATCH 02/24] =?UTF-8?q?=E6=94=B9=E8=BF=9B=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 0a40035..837e7d8 100644 --- a/README.md +++ b/README.md @@ -10,8 +10,10 @@ ### -Log 保存XML日志。如果本选项后带有参数"d",则日志保存在[当前目录](https://docs.microsoft.com/zh-cn/dotnet/api/system.appcontext.basedirectory?view=netframework-4.7.2),文件名是uMatrix-_日期_.xml。如果参数是其他值,则该值指定日志的完整路径。 -### --MergeThreshold -合并类似规则的阀值。默认值为3。 +### --MergeThreshold x +x为整数。 + +设置合并类似规则的阀值。如果不设置,则采用默认值3。 当阀值为3时, @@ -37,7 +39,9 @@ 。 ### --RandomDelete x -随机删除百分之x的规则。x的默认值为5。 +x为整数。 + +设置随机删除百分之x的规则。如果不设置,则采用默认值5。 ### --Verbose 在命令行中输出详细信息 From 8efb0e53c2023afa05b65621813870f23dfe3ffb Mon Sep 17 00:00:00 2001 From: gqqnbig Date: Sun, 15 Jul 2018 11:49:39 -0700 Subject: [PATCH 03/24] =?UTF-8?q?=E5=8F=AF=E9=80=89=E9=83=A8=E5=88=86?= =?UTF-8?q?=E7=94=A8=E4=B8=AD=E6=8B=AC=E5=8F=B7=E5=8C=85=E8=B5=B7=E6=9D=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 837e7d8..045dee5 100644 --- a/README.md +++ b/README.md @@ -10,10 +10,10 @@ ### -Log 保存XML日志。如果本选项后带有参数"d",则日志保存在[当前目录](https://docs.microsoft.com/zh-cn/dotnet/api/system.appcontext.basedirectory?view=netframework-4.7.2),文件名是uMatrix-_日期_.xml。如果参数是其他值,则该值指定日志的完整路径。 -### --MergeThreshold x -x为整数。 +### --MergeThreshold [x] +x为整数,默认值为3。 -设置合并类似规则的阀值。如果不设置,则采用默认值3。 +设置合并类似规则的阀值。 当阀值为3时, @@ -38,10 +38,10 @@ x为整数。 。 -### --RandomDelete x -x为整数。 +### --RandomDelete [x] +x为整数,默认值为5。 -设置随机删除百分之x的规则。如果不设置,则采用默认值5。 +设置随机删除百分之x的规则。 ### --Verbose 在命令行中输出详细信息 @@ -50,5 +50,5 @@ x为整数。 输入文件路径 [输出文件路径] #### 输入文件路径 保存μMatrix规则的文件的路径 -#### 输出文件路径 +#### [输出文件路径] 可选。清理后的规则文件的路径。如果不指定,则保存在*输入文件路径*的同级目录,文件名是uMatrix-*日期*.txt。 From 964ee340fb680e60f9492e09abee4460a4b018d0 Mon Sep 17 00:00:00 2001 From: gqqnbig Date: Sun, 15 Jul 2018 11:50:50 -0700 Subject: [PATCH 04/24] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=BC=A9=E8=BF=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 045dee5..d86d378 100644 --- a/README.md +++ b/README.md @@ -4,11 +4,11 @@ ## 命令行参数 - ### --Help - 显示帮助 +### --Help +显示帮助 - ### -Log - 保存XML日志。如果本选项后带有参数"d",则日志保存在[当前目录](https://docs.microsoft.com/zh-cn/dotnet/api/system.appcontext.basedirectory?view=netframework-4.7.2),文件名是uMatrix-_日期_.xml。如果参数是其他值,则该值指定日志的完整路径。 +### -Log +保存XML日志。如果本选项后带有参数"d",则日志保存在[当前目录](https://docs.microsoft.com/zh-cn/dotnet/api/system.appcontext.basedirectory?view=netframework-4.7.2),文件名是uMatrix-_日期_.xml。如果参数是其他值,则该值指定日志的完整路径。 ### --MergeThreshold [x] x为整数,默认值为3。 From e33a19b0de76018ceb658698f5b5da0b89ca040a Mon Sep 17 00:00:00 2001 From: gqqnbig Date: Sun, 15 Jul 2018 11:52:04 -0700 Subject: [PATCH 05/24] =?UTF-8?q?=E8=BD=BD=E5=85=A5{0}=E6=9D=A1=E5=8E=86?= =?UTF-8?q?=E5=8F=B2=E8=A2=AB=E5=88=A0=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- uMatrixCleaner/Program.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/uMatrixCleaner/Program.cs b/uMatrixCleaner/Program.cs index 11d873c..6aaf57b 100644 --- a/uMatrixCleaner/Program.cs +++ b/uMatrixCleaner/Program.cs @@ -192,7 +192,7 @@ where line.StartsWith("matrix-off") || line.StartsWith("noscript-spoof") || line SaveEvents(events); var newWorkingRules = newRules; - return string.Join(Environment.NewLine, ignoredLines)+ Environment.NewLine + string.Join(Environment.NewLine, isFixedRules[true].Union(newWorkingRules)); + return string.Join(Environment.NewLine, ignoredLines) + Environment.NewLine + string.Join(Environment.NewLine, isFixedRules[true].Union(newWorkingRules)); } @@ -222,6 +222,7 @@ private static List ReadHistorialDeletions() } } + logger.LogInformation("载入{0}条历史被删记录。", deletedRules.Count); return deletedRules; } From ad4244f0805c3e9964b57181d5b4d7b2dde12e87 Mon Sep 17 00:00:00 2001 From: abc Date: Sun, 5 Aug 2018 09:17:55 +0800 Subject: [PATCH 06/24] Delete the code of language version detect --- uMatrixCleaner/uMatrixCleaner.csproj | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/uMatrixCleaner/uMatrixCleaner.csproj b/uMatrixCleaner/uMatrixCleaner.csproj index 04f8b73..13c7a2b 100644 --- a/uMatrixCleaner/uMatrixCleaner.csproj +++ b/uMatrixCleaner/uMatrixCleaner.csproj @@ -6,9 +6,7 @@ gqqnbig - - 7.3 - + none From a048579efaef29919cec4f33c8db88bdd6a93211 Mon Sep 17 00:00:00 2001 From: gqqnbig Date: Sat, 4 Aug 2018 18:35:55 -0700 Subject: [PATCH 07/24] Add sample input --- sample-input.txt | 852 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 852 insertions(+) create mode 100644 sample-input.txt diff --git a/sample-input.txt b/sample-input.txt new file mode 100644 index 0000000..f9b34d6 --- /dev/null +++ b/sample-input.txt @@ -0,0 +1,852 @@ +matrix-off: 104.238.94.230 true +matrix-off: about-scheme true +matrix-off: ali213.net true +matrix-off: baidu.com true +matrix-off: behind-the-scene true +matrix-off: chrome-extension-scheme true +matrix-off: chrome-scheme true +matrix-off: dartsearch.net true +matrix-off: doubleclick.net true +matrix-off: ettoday.net true +matrix-off: exct.net true +matrix-off: fastpackagetracker.co true +matrix-off: gamersky.com true +matrix-off: googleadservices.com true +matrix-off: hootsuite.com true +matrix-off: hrblock.com true +matrix-off: kieusa.net true +matrix-off: kmf.com true +matrix-off: localhost true +matrix-off: on.cc true +matrix-off: opera-scheme true +matrix-off: shireyishunjian.club true +matrix-off: xg4ken.com true +matrix-off: yunfile.com true +noscript-spoof: * true +* * * block +* * css allow +* * frame block +* * image allow +* * script block +* 1st-party * allow +* 1st-party frame allow +* 1st-party script allow +* ajax.googleapis.com script allow +* apis.google.com script allow +* baidu.#网站禁止全部脚本和cookie * block +* baidu.com cookie block +* baidu.com script block +* cdn.jsdelivr.net script allow +* cdn.mathjax.org script allow +* cdn.sstatic.net script allow +* cdnjs.cloudflare.com script allow +* cloudfront.net script allow +* code.jquery.com script allow +* connect.facebook.net script allow +* ecn.dev.virtualearth.net script allow +* googlevideo.com xhr allow +* life.com.tw * block +* maps.google.com script allow +* maps.googleapis.com script allow +* maps.gstatic.com script allow +* plasticnews.wf * block +* player.vimeo.com frame allow +* secure.comodo.com frame allow +* secure.comodo.com script allow +* sina.com.cn script allow +* squizlabs.github.io script allow +* static.parastorage.com script allow +* store.steampowered.com frame allow +* translate.googleapis.com xhr allow +* travel-assets.com script allow +* trustlogo.comodo.com script allow +* weibo.com script block +* www.blogblog.com script allow +* www.blogger.com frame allow +* www.blogger.com script allow +* www.expedia.com script allow +* www.google-analytics.com image allow +* www.google-analytics.com script allow +* www.google.com frame allow +* www.google.com other allow +* www.google.com script allow +* www.google.com xhr allow +* www.gstatic.com script allow +* www.youtube.com frame allow +* www.youtube.com script allow +* youtube.com * allow +* ytimg.com script allow +163.com cache.netease.com script allow +21cn.com open.e.189.cn frame allow +56.com js.tv.itc.cn script allow +85cafe.us 85cafeus.com script allow +91porn.com 192.240.120.2 media allow +a8.com apps.inke.tv script allow +accuweather.com vortex.accuweather.com script block +accuweather.com www.accuweather.com script block +acfun.tv cdn.aixifan.com frame allow +acfun.tv cdn.aixifan.com other allow +acfun.tv cdn.aixifan.com script allow +acfun.tv cdn.aixifan.com xhr allow +acfun.tv info.cdn.cloudacc-inc.com other allow +acfun.tv static.youku.com media allow +alexgorbatchev.com agorbatchev.typepad.com script allow +ali213.net ali213.net script block +alipay.com alipayobjects.com script allow +amazon.com a0.awsstatic.com script allow +amazon.com d2.sc.omtrdc.net image allow +amazon.com images-na.ssl-images-amazon.com script allow +amazon.com z-ecx.images-amazon.com script allow +analytics.google.com analytics.google.com * allow +analytics.google.com google-analytics.com * allow +answers.yahoo.com answers.yahoo.com * allow +appledaily.com access-prod.apis.anvato.net xhr allow +appledaily.com img.appledaily.com.tw script allow +appledaily.com rtnvideo1.appledaily.com.tw media allow +appledaily.com w3.cdn.anvato.net script allow +appledaily.com.tw anvato-api-config.s3.amazonaws.com xhr allow +appledaily.com.tw s-static.ak.facebook.com frame allow +appledaily.com.tw s-static.ak.facebook.com script allow +appledaily.com.tw static.xx.fbcdn.net script allow +appledaily.com.tw staticxx.facebook.com frame allow +appledaily.com.tw staticxx.facebook.com script allow +appledaily.com.tw twimg.edgesuite.net * allow +appledaily.com.tw w3.cdn.anvato.net script allow +appledaily.com.tw www.facebook.com frame allow +appledaily.com.tw www.facebook.com other allow +appledaily.com.tw www.facebook.com script allow +appledaily.com.tw www.facebook.com xhr allow +appveyor.com stripe.com cookie allow +appveyor.com stripe.com frame allow +appveyor.com stripe.com script allow +appveyor.com stripe.com xhr allow +appveyor.com stripe.network cookie allow +appveyor.com stripe.network frame allow +appveyor.com stripe.network script allow +appveyor.com stripensrq.global.ssl.fastly.net xhr allow +appveyor.com www.google.com xhr allow +autotrader.com www.autotraderstatic.com script allow +baidu.com baichuan.baidu.com script allow +baidu.com bcebos.com image block +baidu.com bcs.wenku.bdimg.com script allow +baidu.com pan.baidu.com cookie allow +baidu.com pan.baidu.com script allow +baidu.com pan.bdstatic.com script allow +baidu.com ss0.bdstatic.com script allow +baidu.com static.wenku.bdimg.com script allow +baidu.com tb1.bdstatic.com image block +baidu.com tb1.bdstatic.com script allow +baidu.com tieba.baidu.com cookie allow +baidu.com tieba.baidu.com script allow +baidu.com wenku.baidu.com script allow +bankofamerica.com bac-assets.com script allow +bbc.com static.bbci.co.uk script allow +bdimg.com jump.bdimg.com * block +bestbuy.com js-ssl.bbystatic.com script allow +bestbuy.com js.bbystatic.com script allow +big-cup.tv big-cup.tv cookie block +bilibili.com * media allow +bilibili.com * other allow +bilibili.com acg.tv image block +bilibili.com acg.tv media allow +bilibili.com acgvideo.com xhr allow +bilibili.com cc.acgvideo.com other allow +bilibili.com i0.hdslb.com media allow +bilibili.com s1.hdslb.com script allow +bilibili.com static.hdslb.com * allow +bilibili.com static.hdslb.com script allow +bilibili.com tx.acgvideo.com xhr allow +bilibili.com video.dispatch.tc.qq.com other allow +bilibili.com ws.acgvideo.com media allow +blogspot.com accounts.google.com frame allow +bomb01.com www.bomb01.com script block +booking.com s-ec.bstatic.com script allow +booking.com t-ec.bstatic.com script allow +books.com.tw jci.book.com.tw script allow +box.com cdn01.boxcdn.net script allow +box.com dl.boxcloud.com frame allow +buzzhand.com buzzhand.com css block +buzzhand.com buzzhand.com script block +byvoid.com ajax.aspnetcdn.com script allow +cars.com www.cstatic-graphics.com script allow +charliegogogogo.blogspot.com charliegogogogo.blogspot.com script block +chase.com secure.chasecdn.com script allow +chase.com static.chasecdn.com script allow +chase.com static.chasecdn.com xhr allow +checkr.com api.filepicker.io script allow +checkr.com dialog.filepicker.io frame allow +checkr.com dialog.filepicker.io script allow +checkr.com www.filepicker.io script allow +chinatimes.com brightcove.com xhr allow +chinatimes.com players.brightcove.net script allow +chinesetravelers.com www.chinesetravelers.com script block +circle01.com circle01.com * block +cnet.com fdlstatic.com script allow +communityrewards.me modernmsg.com script allow +cox.com static.cdn.responsys.net script allow +ctags.io media.readthedocs.org script allow +ctfile.com static.tv002.com script allow +ctitv.com.tw vjs.zencdn.net script allow +cybersource.com vcas02c.visa3dsecure.com frame allow +cybersource.com vcas02c.visa3dsecure.com script allow +dailymotion.com static1.dmcdn.net script allow +daliulian.net www.daliulian.net script block +dcard.tw dcard2.s3.amazonaws.com script allow +decisiondesk.com assets.zendesk.com script allow +dillinger.io ajax.cloudflare.com script allow +discover.com www.discoverbank.com script allow +douban.com img3.doubanio.com script allow +douban.com s.doubanio.com script allow +down.gamersky.com down.gamersky.com * allow +dq.tieba.com tb1.bdstatic.com script allow +dropbox.com cf.dropboxstatic.com script allow +dropbox.com dbxlocal.dropboxstatic.com other allow +duotegame.com www.duotegame.com xhr block +eff.org js.stripe.com script allow +elsavoyage.pixnet.net elsavoyage.pixnet.net script block +ettoday.net ettoday.net script block +evernote.com p9.zdassets.com script allow +facebook.com akamaihd.net other allow +facebook.com fbstatic-a.akamaihd.net script allow +facebook.com fbstatic-a.akamaihd.net xhr allow +facebook.com pixel.facebook.com frame allow +facebook.com pixel.facebook.com other allow +facebook.com pixel.facebook.com script allow +facebook.com pixel.facebook.com xhr allow +facebook.com static.xx.fbcdn.net script allow +facebook.com video-lax1-1.xx.fbcdn.net other allow +facebook.com video-mia1-1.xx.fbcdn.net xhr allow +facebook.com video-sjc2-1.xx.fbcdn.net xhr allow +facebook.com xx.fbcdn.net media allow +facebook.com xx.fbcdn.net other allow +facebook.com xx.fbcdn.net xhr allow +farwestapartments.com jqueryjs.googlecode.com script allow +feemoo.com feemoo.com cookie block +finance.yahoo.com finance.yahoo.com * allow +forbes.com i.forbesimg.com script allow +foursearestaurant.com maps.google.com frame allow +fracturedspace.com use.typekit.net script allow +free.com.tw ajax.cloudflare.com script allow +gamer.com.tw i2.bahamut.com.tw script allow +gamersky.com gamersky.com * block +gamersky.com img1.gamersky.com image allow +gamersky.com j.gamersky.com css allow +geforce.com iceleads.com script allow +geforce.com images.nvidia.com script allow +getjoyz.com www.getjoyz.com css block +github.com github-cloud.s3.amazonaws.com xhr allow +github.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com xhr allow +github.com github-production-user-asset-6210df.s3.amazonaws.com xhr allow +github.com github-windows.s3.amazonaws.com script allow +github.com raw.githubusercontent.com xhr allow +github.com render.githubusercontent.com frame allow +github.com render.githubusercontent.com script allow +gitlab.com assets.gitlab-static.net script allow +gohugo.io discourse-cdn-sjc2.com script allow +goodreads.com s.gr-assets.com script allow +google.com accounts.youtube.com frame allow +google.com content.googleapis.com frame allow +google.com content.googleapis.com script allow +google.com content.googleapis.com xhr allow +google.com doc-14-1k-docs.googleusercontent.com cookie allow +google.com doc-14-1k-docs.googleusercontent.com frame allow +google.com ggpht.com script allow +google.com ggpht.com xhr allow +google.com google-developers.appspot.com frame allow +google.com google-developers.appspot.com script allow +google.com googleusercontent.com other allow +google.com googlevideo.com other allow +google.com mail-attachment.googleusercontent.com frame allow +google.com oauth.googleusercontent.com script allow +google.com play-music.gstatic.com script allow +google.com ssl.gstatic.com * allow +google.com ssl.gstatic.com script allow +google.com translate.googleusercontent.com frame allow +google.com www.googleapis.com script allow +google.com www.gstatic.com xhr allow +gqqnb.blogspot.com apis.google.com script allow +gqqnbig.me wp-themes.com frame allow +gqqnbig.me wp-themes.com script allow +greatfire.org checkout.stripe.com script allow +greatfire.org s3.amazonaws.com script allow +guangdongsoftware.com guangdongsoftware.com script block +hjav.in dioguitar23.in image block +hjav.in hjav.in image block +hjav.in www.hotavxxx.com image block +hk.style.yahoo.com hk.style.yahoo.com image allow +hk.style.yahoo.com hk.style.yahoo.com xhr allow +hkjam.com hkjam.com script block +homes.com static-homes.com script allow +homes.com www.adobetag.com script allow +hooyoh.com openload.co frame allow +hooyoh.com www-hooyoh-com.filesusr.com frame allow +hotels.com cdn-hotels.com script allow +hurtondirt.com static.wixstatic.com xhr allow +ibilibili.com cdn.bootcss.com script allow +import.io static.squarespace.com script allow +instagram.com akamaihd.net other allow +instagram.com cdninstagram.com other allow +instagram.com instagramstatic-a.akamaihd.net script allow +instagram.com scontent-dfw1-1.cdninstagram.com other allow +jav008.com * image block +jav008.com www.jav008.com image allow +jav008.com www.jav008.com script block +jb51.net jb51.net script block +jingyan.baidu.com jingyan.baidu.com script allow +jsfiddle.net fiddle.jshell.net frame allow +jsfiddle.net fiddle.jshell.net script allow +justkid.net cdn.shopify.com script allow +kayak.com r9cdn.net script allow +kayak.com www.booking.com frame allow +kayak.com www.booking.com script allow +kayak.com www.expedia.com frame allow +kayak.com www.priceline.com * allow +kayak.com www.travelocity.com frame allow +kayak.com www.travelocity.com script allow +kmf.com code-kmf.global.ssl.fastly.net script allow +kmf.com eco-api.meiqia.com frame allow +kmf.com eco-api.meiqia.com script allow +kmf.com static.meiqia.com script allow +knots3d.com knots3d.elasticbeanstalk.com xhr allow +ktzhk.com fun.ktzhk.com script block +liaisoncas.com maxcdn.bootstrapcdn.com script allow +libreoffice.org n3.nabble.com script allow +libreoffice.org nabble.documentfoundation.org frame allow +libreoffice.org nabble.documentfoundation.org script allow +linkedin.com static.licdn.com script allow +liubin.org caniuse.com frame allow +live.com auth.gfx.ms script allow +live.com files.1drv.com frame allow +live.com p.sfx.ms script allow +live.com spoprod-a.akamaihd.net script allow +lodash.com embed.runkit.com script allow +lodash.com lodash.report-uri.io other allow +lodash.com runkit.com frame allow +lodash.com runkit.com script allow +lodash.com runkit.com xhr allow +lodash.com static.tonicdev.com script allow +logitech.com cloudplatform.coveo.com xhr allow +mafengwo.cn js.mafengwo.net script allow +mainstreetvillageresidents.com cdntelerikscripts.buildinglink.com script allow +mainstreetvillageresidents.com lincolnapts.com frame allow +mashable.com mashable.com script block +meipai.com img.app.meitudata.com script allow +meipai.com meitudata.com other allow +meipai.com mvvideo1.meitudata.com media allow +merriam-webster.com merriam-webster.com script block +microsoft.com ajax.aspnetcdn.com script allow +microsoft.com c.microsoft.com script allow +microsoft.com i1.social.s-msft.com script allow +microsoft.com sec.s-msft.com script allow +microsoft.com ssl.microsofttranslator.com script allow +mingpao.com p.jwpcdn.com other allow +mingpao.com p.jwpcdn.com script allow +mma-core.com sapo.pt media allow +mma-core.com ssl.p.jwpcdn.com script allow +moddb.com cdn.dbolical.com media allow +moddb.com content.jwplatform.com script allow +moddb.com dl.dbolical.com frame allow +moddb.com ssl.p.jwpcdn.com script allow +mozilla.org cdn.mdn.mozilla.net script allow +mozilla.org developer.cdn.mozilla.net script allow +mozilla.org interactive-examples.mdn.mozilla.net frame allow +mozilla.org interactive-examples.mdn.mozilla.net script allow +mozilla.org login.persona.org script allow +mozilla.org mdn.mozillademos.org frame allow +mp.weixin.qq.com mp.weixin.qq.com script allow +mp.weixin.qq.com res.wx.qq.com script allow +multitwitch.tv twitch.tv frame allow +multitwitch.tv web-cdn.ttvnw.net script allow +multitwitch.tv www.twitch.tv script allow +myuv.com clp.uvvu.com frame allow +myuv.com clp.uvvu.com script allow +myworkdayjobs.com vps-wd5.myworkdaycdn.com script allow +nextmedia.com apis.google.com script allow +nextmedia.com cdn.inskinmedia.com script allow +nextmedia.com cdns.gigya.com frame allow +nextmedia.com gigya.com script allow +nextmedia.com google.com frame allow +nextmedia.com ssl.gstatic.com script allow +nextmedia.com video.appledaily.com.hk media allow +nextmedia.com video.appledaily.com.hk other allow +nextmedia.com video.next.hk media allow +ngacn.cc * image block +ngacn.cc nga.178.com script allow +ngacn.cc ngacn.cc image allow +nps.gov nps-hfc.cartodb.com xhr allow +nytimes.com nyt.com script allow +ocks.org d3js.org script allow +ofx.com adsynth-ofx-quotewidget-prod.herokuapp.com xhr allow +overseas.weibo.com overseas.weibo.com * block +paypal.com www.paypalobjects.com script allow +pcgamer.com www.pcgamer.com script block +pcgames.com.cn js.3conline.com script allow +pchome.net btn.pchome.net * block +pconline.com.cn js.3conline.com script allow +piaodown.com www.piaodown.com image block +pinyin.cn dl.qqpy.sogou.com script allow +pixnet.net pixnet.net script block +plnkr.co d3js.org script allow +pornhd.com lswcdn.net other allow +pornhd.com lswcdn.net script allow +positivessl.com secure.comodo.net script allow +pregnantmywife.blogspot.com pregnantmywife.blogspot.com script block +qiushibaike.com s.haiyunx.com script allow +qq.com captcha.gtimg.com script allow +qq.com captcha.qq.com script allow +qq.com check.ptlogin2.qq.com script allow +qq.com digi.tech.qq.com script allow +qq.com i.qq.com script allow +qq.com ic2.s8.qzone.qq.com script allow +qq.com imgcache.qq.com script allow +qq.com login.weixin.qq.com script allow +qq.com login.wx.qq.com script allow +qq.com mat1.gtimg.com script allow +qq.com os.qzonestyle.gtimg.cn script allow +qq.com os.qzs.qq.com script allow +qq.com plist.photo.qq.com script allow +qq.com ptlogin2.qq.com script allow +qq.com qzone.qq.com script allow +qq.com qzonestyle.gtimg.cn script allow +qq.com route.store.qq.com script allow +qq.com taotao.qq.com script allow +qq.com ui.ptlogin2.qq.com script allow +qq.com user.qzone.qq.com script allow +qq.com v.qq.com script allow +qq.com xalist.photo.qq.com script allow +qq.com xui.ptlogin2.qq.com script allow +quora.com qsc.is.quoracdn.net script allow +qwerkywriter.com cdn.shopify.com script allow +qyer.com common1.qyerstatic.com script allow +radioshack.com dpn1b2gvyegqv.cloudfront.net xhr allow +rclark.github.io a.tiles.mapbox.com xhr allow +rclark.github.io api.tiles.mapbox.com script allow +reddit.com www.redditstatic.com script allow +redtube.com cdn1d-static-shared.phncdn.com script allow +redtube.com ci.rdtcdn.com script allow +redtube.com cw.rdtcdn.com media allow +redtube.com ew.rdtcdn.com media allow +redtube.com rdtcdn.com media allow +renren.com s.xnimg.cn script allow +residentportal.com commoncdn.entrata.com script allow +residentportal.com commoncdn.propertysolutions.com script allow +s-angels.com graphis2.shard.jp media allow +securecafe.com cdngeneral.rentcafe.com script allow +securecafe.com maxcdn.bootstrapcdn.com script allow +sexinsex.net sexinsex.net script block +share001.com ww.share001.com css block +share001.com ww.share001.com script block +shireyishunjian.vip tcss.qq.com script allow +shuttletolax.com shuttle2lax.hudsonltd.net script allow +sina.com.cn js.t.sinajs.cn script allow +sina.com.cn n.sinaimg.cn script allow +sina.com.cn simg.sinajs.cn css allow +sina.com.cn simg.sinajs.cn image allow +sina.com.cn sjs.sinajs.cn script allow +slack.com a.slack-edge.com script allow +slideshare.net public.slidesharecdn.com script allow +soundcloud.com a-v2.sndcdn.com script allow +soundcloud.com ec-media.sndcdn.com other allow +sourceforge.net a.fsdn.com script allow +stackexchange.com sstatic.net script allow +stackoverflow.com stacksnippets.net frame allow +stackoverflow.com stacksnippets.net script allow +starbucks.com assets.web.starbucksassets.com script allow +starbucks.com starbucks-rewards.awsptr.com frame allow +statefarm.com ac1.st8fm.com script allow +steamcommunity.com 208.64.201.147 frame allow +steamcommunity.com community.edgecast.steamstatic.com script allow +steamcommunity.com steamcommunity-a.akamaihd.net script allow +steampowered.com cdn.akamai.steamstatic.com media allow +steampowered.com cdn.edgecast.steamstatic.com media allow +steampowered.com steamstore-a.akamaihd.net script allow +steampowered.com store.akamai.steamstatic.com script allow +steampowered.com store.edgecast.steamstatic.com script allow +t-mobile.com s.tmocache.com script allow +t9b.info fans.bestvogue.com image block +taobao.com a.tbcdn.cn script allow +taobao.com assets.alicdn.com script allow +taobao.com g.alicdn.com script allow +taobao.com osdsc.alicdn.com script allow +taobao.com s.tbcdn.cn script allow +target.com assets.targetimg1.com script allow +target.com img1.targetimg1.com script allow +target.com img3-secure.targetimg3.com script allow +target.com img3.targetimg3.com script allow +techbang.com techbang.com.tw script allow +techradar.com vanilla.futurecdn.net script allow +thesaurus.com cdn.sfdict.com script allow +thestandnews.com fbstatic-a.akamaihd.net script allow +thestandnews.com s-static.ak.facebook.com frame allow +thestandnews.com s-static.ak.facebook.com script allow +thestandnews.com www.facebook.com frame allow +thestandnews.com www.facebook.com other allow +thestandnews.com www.facebook.com script allow +thestandnews.com www.facebook.com xhr allow +thewindowsclub.com www.thewindowsclub.com script block +thisav.com * cookie block +thisav.com ad.thisav.com other allow +thisav.com ad.thisav.com script allow +thisav.com gds786bomyc.com * block +thisav.com images.thisav.com other block +thisav.com p.jwpcdn.com script allow +tieba.baidu.com passport.baidu.com cookie allow +tieba.baidu.com passport.baidu.com script allow +tieba.baidu.com passport.bdimg.com script allow +tieba.baidu.com ss0.bdstatic.com image block +tieba.baidu.com tbmsg.baidu.com script allow +tiffany.com scene7.com script allow +tmall.com cloud.video.taobao.com media allow +tmall.com g.alicdn.com script allow +tmall.com hdc1.alicdn.com script allow +tmall.com login.taobao.com frame allow +tmall.com mdskip.taobao.com script allow +tmall.com t.alicdn.com script allow +tmall.com tbm.alicdn.com media allow +tomtom.com web.tomtom-static.com script allow +tribulant.com gist.github.com script allow +tubxporn.com tubporn.tv other allow +tudou.com css.tudouui.com other allow +tudou.com js.tudouui.com other allow +tudou.com js.tudouui.com script allow +tudouui.com g2.tdimg.com media allow +tudouui.com v2.tudou.com media allow +tudouui.com www.tudou.com media allow +tutsplus.com s.ytimg.com other allow +tutsplus.com youtube.com other allow +tw.answers.yahoo.com tw.answers.yahoo.com * allow +tw.money.yahoo.com yimg.com * block +twitch.tv 1st-party media block +twitch.tv 1st-party xhr block +twitch.tv akamaized.net xhr allow +twitch.tv api.twitch.tv frame allow +twitch.tv api.twitch.tv script allow +twitch.tv api.twitch.tv xhr allow +twitch.tv api2.twitch.tv frame allow +twitch.tv api2.twitch.tv script allow +twitch.tv clips-media-assets.twitch.tv media allow +twitch.tv clips.twitch.tv script allow +twitch.tv cvp.twitch.tv script allow +twitch.tv go.twitch.tv script allow +twitch.tv gql.twitch.tv xhr allow +twitch.tv hls.ttvnw.net media allow +twitch.tv hls.ttvnw.net other allow +twitch.tv hls.ttvnw.net xhr allow +twitch.tv irc-ws.chat.twitch.tv xhr allow +twitch.tv lax01.hls.ttvnw.net xhr allow +twitch.tv minixperiment.twitch.tv xhr allow +twitch.tv passport-cdn.ttvnw.net script allow +twitch.tv passport.twitch.tv frame allow +twitch.tv passport.twitch.tv xhr allow +twitch.tv player.twitch.tv * allow +twitch.tv player.twitch.tv script allow +twitch.tv rechat.twitch.tv xhr allow +twitch.tv spade.twitch.tv xhr allow +twitch.tv spectre.twitch.tv script allow +twitch.tv static.twitchcdn.net script allow +twitch.tv tmi.twitch.tv script allow +twitch.tv usher.ttvnw.net media allow +twitch.tv usher.ttvnw.net xhr allow +twitch.tv video-edge-55939c.lax01.hls.ttvnw.net xhr allow +twitch.tv vod-metro.twitch.tv media allow +twitch.tv vod-metro.twitch.tv xhr allow +twitch.tv vod-secure.twitch.tv xhr allow +twitch.tv vod.ak.hls.ttvnw.net media allow +twitch.tv vod.ak.hls.ttvnw.net other allow +twitch.tv vod.edgecast.hls.ttvnw.net media allow +twitch.tv web-cdn.ttvnw.net script allow +twitch.tv www-cdn.jtvnw.net script allow +twitch.tv www.twitch.tv media allow +twitch.tv www.twitch.tv script allow +twitter.com abs.twimg.com script allow +twitter.com amp.twimg.com frame allow +twitter.com amp.twimg.com script allow +twitter.com pbs.twimg.com other allow +twitter.com ton.twimg.com script allow +twitter.com video.twimg.com media allow +twitter.com video.twimg.com other allow +twitter.com video.twimg.com xhr allow +ucla.edu cse.google.com frame allow +ucla.edu technolutions.net script allow +ucla.edu www.googleapis.com script allow +udn.com j.udn.com.tw script allow +udn.com s.udn.com.tw script allow +udn.com udn.com xhr block +urlxf.qq.com urlxf.qq.com script allow +usc.edu 34pd4s1qv42731f3e23impou-wpengine.netdna-ssl.com script allow +usc.edu tbcdn.talentbrew.com script allow +v.qq.com 119.167.163.27 media allow +v.qq.com 203.205.148.120 media allow +v.qq.com 203.205.148.147 media allow +v.qq.com 203.205.158.77 media allow +v.qq.com vhotakamai.video.gtimg.com media allow +v.qq.com vm.gtimg.cn script allow +vaikan.com static.webhek.com script allow +verizonwireless.com scache.vzw.com script allow +virus--alert--warning.com virus--alert--warning.com * block +virustotal.com virustotalcloud.appspot.com script allow +wacowla.com instagramstatic-a.akamaihd.net script allow +wacowla.com platform.instagram.com script allow +wacowla.com www.instagram.com frame allow +wacowla.com www.instagram.com script allow +walmart.com i5.walmartimages.com script allow +weibo.com api.miaopai.com media allow +weibo.com bsyqncdn.miaopai.com media allow +weibo.com h5.sinaimg.cn script allow +weibo.com i.sso.sina.com.cn script allow +weibo.com img.t.sinajs.cn image block +weibo.com js.t.sinajs.cn other allow +weibo.com js.t.sinajs.cn script allow +weibo.com js1.t.sinajs.cn script allow +weibo.com js2.t.sinajs.cn script allow +weibo.com login.sina.com.cn * allow +weibo.com login.sina.com.cn script allow +weibo.com mvvideo1.meitudata.com media allow +weibo.com passport.weibo.com script allow +weibo.com us.sinaimg.cn media allow +weibo.com us.sinaimg.cn other allow +weibo.com us.weibo.com * block +weibo.com wbapp.mobile.sina.cn script allow +weibo.com weibo.com * allow +weibo.com weibo.com script inherit +weibo.com wscdn.miaopai.com media allow +weibo.com www.miaopai.com media allow +weibo.com www.weibo.com xhr allow +wenjuan.com static-wenjuan.b0.upaiyun.com script allow +wenku.baidu.com baidu.com other block +wenku.baidu.com cm.baidu.com frame block +wenku.baidu.com eduad.baidu.com xhr block +wenku.baidu.com wenku.baidu.com frame block +wenku.baidu.com wkbos.bdimg.com script allow +wenku.baidu.com wkstatic.bdimg.com script allow +wetest.qq.com wetest.qq.com script allow +whatismyipaddress.com cdn.whatismyipaddress.info script allow +wikia.com wikia.com script block +wikia.com wikia.nocookie.net script allow +wikimedia.org phab.wmfusercontent.org script allow +wikipedia.org * * allow +wikipedia.org mediawiki.org script allow +wikipedia.org wikimedia.org script allow +wix.com static.wixstatic.com xhr allow +wordpress.org s.w.org script allow +www.baidu.com www.baidu.com script allow +www.gamersky.com player.youku.com frame allow +www.gamersky.com www.gamersky.com * allow +www.ibm.com 1.www.s81c.com script allow +www.photonvps.com secure.quantumgateway.com frame allow +www.requestly.in requestly.firebaseio.com script allow +www.requestly.in s-usc1c-nss-203.firebaseio.com script allow +xfinity.com cdn.pdc.comcast.com script allow +xiaokaxiu.com miaopai.com other allow +xiaoying.tv 183.61.63.109 other allow +xiaoying.tv w.api.xiaoying.co script allow +yahoo.com http.atlas.cdn.yimg.com * allow +yahoo.com s.yimg.com other allow +yahoo.com tw.money.yahoo.com script allow +yahoo.com yahoo.com * block +yahoo.com yimg.com script allow +yalewoo.com lib.sinaapp.com script allow +yelp.com fl.yelpcdn.com script allow +yelp.com secure.quantserve.com script allow +yelp.com.tw fl.yelpcdn.com script allow +yinxiang.com p9.zdassets.com script allow +youku.com 103.38.56.100 media allow +youku.com 103.38.56.100 xhr allow +youku.com 103.38.56.101 media allow +youku.com 103.38.56.101 xhr allow +youku.com 103.38.56.102 media allow +youku.com 103.38.56.102 xhr allow +youku.com 103.38.56.103 media allow +youku.com 103.38.56.103 xhr allow +youku.com 103.38.56.104 media allow +youku.com 103.38.56.104 xhr allow +youku.com 103.38.56.105 media allow +youku.com 103.38.56.106 media allow +youku.com 103.38.56.107 media allow +youku.com 103.38.56.108 media allow +youku.com 103.38.56.109 media allow +youku.com 103.38.56.11 media allow +youku.com 103.38.56.110 media allow +youku.com 103.38.56.111 media allow +youku.com 103.38.56.112 media allow +youku.com 103.38.56.112 xhr allow +youku.com 103.38.56.113 media allow +youku.com 103.38.56.114 media allow +youku.com 103.38.56.115 media allow +youku.com 103.38.56.118 media allow +youku.com 103.38.56.119 xhr allow +youku.com 103.38.56.12 media allow +youku.com 103.38.56.121 media allow +youku.com 103.38.56.122 media allow +youku.com 103.38.56.123 media allow +youku.com 103.38.56.124 xhr allow +youku.com 103.38.56.125 media allow +youku.com 103.38.56.126 media allow +youku.com 103.38.56.126 xhr allow +youku.com 103.38.56.127 media allow +youku.com 103.38.56.127 xhr allow +youku.com 103.38.56.128 media allow +youku.com 103.38.56.129 media allow +youku.com 103.38.56.13 media allow +youku.com 103.38.56.130 media allow +youku.com 103.38.56.130 xhr allow +youku.com 103.38.56.131 media allow +youku.com 103.38.56.131 xhr allow +youku.com 103.38.56.132 media allow +youku.com 103.38.56.132 xhr allow +youku.com 103.38.56.133 media allow +youku.com 103.38.56.134 media allow +youku.com 103.38.56.135 media allow +youku.com 103.38.56.136 media allow +youku.com 103.38.56.137 media allow +youku.com 103.38.56.138 media allow +youku.com 103.38.56.138 xhr allow +youku.com 103.38.56.139 media allow +youku.com 103.38.56.139 xhr allow +youku.com 103.38.56.14 media allow +youku.com 103.38.56.14 xhr allow +youku.com 103.38.56.140 media allow +youku.com 103.38.56.141 media allow +youku.com 103.38.56.142 media allow +youku.com 103.38.56.142 xhr allow +youku.com 103.38.56.143 media allow +youku.com 103.38.56.144 media allow +youku.com 103.38.56.144 xhr allow +youku.com 103.38.56.145 media allow +youku.com 103.38.56.145 xhr allow +youku.com 103.38.56.148 media allow +youku.com 103.38.56.149 media allow +youku.com 103.38.56.149 xhr allow +youku.com 103.38.56.15 media allow +youku.com 103.38.56.15 xhr allow +youku.com 103.38.56.151 media allow +youku.com 103.38.56.151 xhr allow +youku.com 103.38.56.153 media allow +youku.com 103.38.56.153 xhr allow +youku.com 103.38.56.154 media allow +youku.com 103.38.56.155 xhr allow +youku.com 103.38.56.156 media allow +youku.com 103.38.56.156 xhr allow +youku.com 103.38.56.157 media allow +youku.com 103.38.56.157 xhr allow +youku.com 103.38.56.158 media allow +youku.com 103.38.56.159 media allow +youku.com 103.38.56.16 media allow +youku.com 103.38.56.17 media allow +youku.com 103.38.56.17 xhr allow +youku.com 103.38.56.18 media allow +youku.com 103.38.56.19 media allow +youku.com 103.38.56.20 media allow +youku.com 103.38.56.21 media allow +youku.com 103.38.56.21 xhr allow +youku.com 103.38.56.22 media allow +youku.com 103.38.56.24 media allow +youku.com 103.38.56.24 xhr allow +youku.com 103.38.56.25 media allow +youku.com 103.38.56.25 xhr allow +youku.com 103.38.56.26 media allow +youku.com 103.38.56.26 xhr allow +youku.com 103.38.56.27 media allow +youku.com 103.38.56.28 media allow +youku.com 103.38.56.28 xhr allow +youku.com 103.38.56.29 xhr allow +youku.com 103.38.56.30 media allow +youku.com 103.38.56.31 media allow +youku.com 103.38.56.32 media allow +youku.com 103.38.56.33 media allow +youku.com 103.38.56.34 media allow +youku.com 103.38.56.35 media allow +youku.com 103.38.56.37 media allow +youku.com 103.38.56.39 media allow +youku.com 103.38.56.40 media allow +youku.com 103.38.56.41 media allow +youku.com 103.38.56.43 media allow +youku.com 103.38.56.43 xhr allow +youku.com 103.38.56.44 media allow +youku.com 103.38.56.45 media allow +youku.com 103.38.56.46 media allow +youku.com 103.38.56.46 xhr allow +youku.com 103.38.56.47 xhr allow +youku.com 103.38.56.48 media allow +youku.com 103.38.56.49 media allow +youku.com 103.38.56.49 xhr allow +youku.com 103.38.56.50 media allow +youku.com 103.38.56.50 xhr allow +youku.com 103.38.56.51 media allow +youku.com 103.38.56.52 media allow +youku.com 103.38.56.52 xhr allow +youku.com 103.38.56.53 media allow +youku.com 103.38.56.53 xhr allow +youku.com 103.38.56.54 media allow +youku.com 103.38.56.55 media allow +youku.com 103.38.56.55 xhr allow +youku.com 103.38.56.56 media allow +youku.com 103.38.56.57 media allow +youku.com 103.38.56.58 media allow +youku.com 103.38.56.59 media allow +youku.com 103.38.56.59 xhr allow +youku.com 103.38.56.60 media allow +youku.com 103.38.56.61 media allow +youku.com 103.38.56.62 xhr allow +youku.com 103.38.56.63 media allow +youku.com 103.38.56.63 xhr allow +youku.com 103.38.56.64 media allow +youku.com 103.38.56.64 xhr allow +youku.com 103.38.56.65 media allow +youku.com 103.38.56.65 xhr allow +youku.com 103.38.56.66 media allow +youku.com 103.38.56.66 xhr allow +youku.com 103.38.56.69 media allow +youku.com 103.38.56.70 media allow +youku.com 103.38.56.71 media allow +youku.com 103.38.56.72 media allow +youku.com 103.38.56.73 media allow +youku.com 103.38.56.74 media allow +youku.com 103.38.56.74 xhr allow +youku.com 103.38.56.75 media allow +youku.com 103.38.56.76 media allow +youku.com 103.38.56.77 media allow +youku.com 103.38.56.78 media allow +youku.com 103.38.56.78 xhr allow +youku.com 103.38.56.81 media allow +youku.com 103.38.56.82 media allow +youku.com 103.38.56.82 xhr allow +youku.com 103.38.56.83 media allow +youku.com 103.38.56.84 media allow +youku.com 103.38.56.84 xhr allow +youku.com 103.38.56.85 xhr allow +youku.com 103.38.56.86 media allow +youku.com 103.38.56.87 media allow +youku.com 103.38.56.88 media allow +youku.com 103.38.56.88 xhr allow +youku.com 103.38.56.89 media allow +youku.com 103.38.56.89 xhr allow +youku.com 103.38.56.90 media allow +youku.com 103.38.56.91 xhr allow +youku.com 103.38.56.92 media allow +youku.com 103.38.56.93 media allow +youku.com 103.38.56.94 media allow +youku.com 103.38.56.95 media allow +youku.com 103.38.56.96 media allow +youku.com 103.38.56.97 media allow +youku.com 103.38.56.97 xhr allow +youku.com 103.38.56.98 media allow +youku.com 103.38.56.99 media allow +youku.com 103.38.56.99 xhr allow +youku.com 120.25.151.196 media allow +youku.com aeu.alicdn.com script allow +youku.com af.alicdn.com script allow +youku.com g.alicdn.com script allow +youku.com hudong.alicdn.com script allow +youku.com js.ykimg.com script allow +youku.com r1.ykimg.com image block +youku.com v2html.atm.youku.com script allow +youku.com yt.mmstat.com image allow +youtube.com adsafeprotected.com * allow +youtube.com googleadservices.com * allow +youtube.com partner.googleadservices.com * allow +youtube.com s.ytimg.com script allow +youtube.com youtube.com xhr block +yunpan.cn qhimg.com script allow +zhihu.com z1.zhimg.com script allow +zillow.com www.zillowstatic.com script allow From 811f5ef86e4315b5752f40d89e5fdc7bed1a6a54 Mon Sep 17 00:00:00 2001 From: gqqnbig Date: Sun, 5 Aug 2018 14:23:41 -0700 Subject: [PATCH 08/24] Add asp.net mvc core website that calls uMatrixCleaner --- uMatrixCleaner.sln | 10 ++- .../Controllers/CleanerController.cs | 48 +++++++++++ .../Controllers/DefaultController.cs | 16 ++++ .../Controllers/ValuesController.cs | 44 ++++++++++ uMatrixCleanerOnline/Program.cs | 25 ++++++ .../Properties/launchSettings.json | 29 +++++++ uMatrixCleanerOnline/Startup.cs | 41 ++++++++++ .../TextMediaTypeFormatter.cs | 81 +++++++++++++++++++ .../appsettings.Development.json | 10 +++ uMatrixCleanerOnline/appsettings.json | 15 ++++ .../uMatrixCleanerOnline.csproj | 20 +++++ 11 files changed, 337 insertions(+), 2 deletions(-) create mode 100644 uMatrixCleanerOnline/Controllers/CleanerController.cs create mode 100644 uMatrixCleanerOnline/Controllers/DefaultController.cs create mode 100644 uMatrixCleanerOnline/Controllers/ValuesController.cs create mode 100644 uMatrixCleanerOnline/Program.cs create mode 100644 uMatrixCleanerOnline/Properties/launchSettings.json create mode 100644 uMatrixCleanerOnline/Startup.cs create mode 100644 uMatrixCleanerOnline/TextMediaTypeFormatter.cs create mode 100644 uMatrixCleanerOnline/appsettings.Development.json create mode 100644 uMatrixCleanerOnline/appsettings.json create mode 100644 uMatrixCleanerOnline/uMatrixCleanerOnline.csproj diff --git a/uMatrixCleaner.sln b/uMatrixCleaner.sln index 019cfc9..9d041f3 100644 --- a/uMatrixCleaner.sln +++ b/uMatrixCleaner.sln @@ -3,9 +3,11 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 VisualStudioVersion = 15.0.27428.2015 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "uMatrixCleaner", "uMatrixCleaner\uMatrixCleaner.csproj", "{45FEEDA3-D754-48F8-B5E8-8F9D87F2693C}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "uMatrixCleaner", "uMatrixCleaner\uMatrixCleaner.csproj", "{45FEEDA3-D754-48F8-B5E8-8F9D87F2693C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests", "Tests\Tests.csproj", "{BCF2DBA2-3EE0-4A64-AEDC-DD44453D2520}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tests", "Tests\Tests.csproj", "{BCF2DBA2-3EE0-4A64-AEDC-DD44453D2520}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "uMatrixCleanerOnline", "uMatrixCleanerOnline\uMatrixCleanerOnline.csproj", "{D8C7F2C1-D6CF-49A6-B846-007D93A0871E}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -21,6 +23,10 @@ Global {BCF2DBA2-3EE0-4A64-AEDC-DD44453D2520}.Debug|Any CPU.Build.0 = Debug|Any CPU {BCF2DBA2-3EE0-4A64-AEDC-DD44453D2520}.Release|Any CPU.ActiveCfg = Release|Any CPU {BCF2DBA2-3EE0-4A64-AEDC-DD44453D2520}.Release|Any CPU.Build.0 = Release|Any CPU + {D8C7F2C1-D6CF-49A6-B846-007D93A0871E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D8C7F2C1-D6CF-49A6-B846-007D93A0871E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D8C7F2C1-D6CF-49A6-B846-007D93A0871E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D8C7F2C1-D6CF-49A6-B846-007D93A0871E}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/uMatrixCleanerOnline/Controllers/CleanerController.cs b/uMatrixCleanerOnline/Controllers/CleanerController.cs new file mode 100644 index 0000000..2aabcda --- /dev/null +++ b/uMatrixCleanerOnline/Controllers/CleanerController.cs @@ -0,0 +1,48 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; + +namespace uMatrixCleanerOL.Controllers +{ + [Produces("application/json")] + [Route("api/Cleaner")] + public class CleanerController : Controller + { + + // GET: api/Default + [HttpGet] + public IEnumerable Get() + { + return new string[] { "value1", "value2" }; + } + + // GET: api/Default/5 + [HttpGet("{id}", Name = "Get")] + public string Get(int id) + { + return "value"; + } + + // POST: api/Default + [HttpPost] + public string Post([FromBody]string value) + { + return $"{value.Split('\r', '\n').Length} rules available."; + } + + // PUT: api/Default/5 + [HttpPut("{id}")] + public void Put(int id, [FromBody]string value) + { + } + + // DELETE: api/ApiWithActions/5 + [HttpDelete("{id}")] + public void Delete(int id) + { + } + } +} \ No newline at end of file diff --git a/uMatrixCleanerOnline/Controllers/DefaultController.cs b/uMatrixCleanerOnline/Controllers/DefaultController.cs new file mode 100644 index 0000000..e7c43f0 --- /dev/null +++ b/uMatrixCleanerOnline/Controllers/DefaultController.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; + +namespace uMatrixCleanerOL.Controllers +{ + [Produces("application/json")] + [Route("api/Default")] + public class DefaultController : Controller + { + + } +} diff --git a/uMatrixCleanerOnline/Controllers/ValuesController.cs b/uMatrixCleanerOnline/Controllers/ValuesController.cs new file mode 100644 index 0000000..a7d42cc --- /dev/null +++ b/uMatrixCleanerOnline/Controllers/ValuesController.cs @@ -0,0 +1,44 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Mvc; + +namespace uMatrixCleanerOL.Controllers +{ + [Route("api/[controller]")] + public class ValuesController : Controller + { + // GET api/values + [HttpGet] + public IEnumerable Get() + { + return new string[] { "value1", "value2" }; + } + + // GET api/values/5 + [HttpGet("{id}")] + public string Get(int id) + { + return "value"; + } + + // POST api/values + [HttpPost] + public void Post([FromBody]string value) + { + } + + // PUT api/values/5 + [HttpPut("{id}")] + public void Put(int id, [FromBody]string value) + { + } + + // DELETE api/values/5 + [HttpDelete("{id}")] + public void Delete(int id) + { + } + } +} diff --git a/uMatrixCleanerOnline/Program.cs b/uMatrixCleanerOnline/Program.cs new file mode 100644 index 0000000..909b0b7 --- /dev/null +++ b/uMatrixCleanerOnline/Program.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore; +using Microsoft.AspNetCore.Hosting; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.Logging; + +namespace uMatrixCleanerOL +{ + public class Program + { + public static void Main(string[] args) + { + BuildWebHost(args).Run(); + } + + public static IWebHost BuildWebHost(string[] args) => + WebHost.CreateDefaultBuilder(args) + .UseStartup() + .Build(); + } +} diff --git a/uMatrixCleanerOnline/Properties/launchSettings.json b/uMatrixCleanerOnline/Properties/launchSettings.json new file mode 100644 index 0000000..c0f9968 --- /dev/null +++ b/uMatrixCleanerOnline/Properties/launchSettings.json @@ -0,0 +1,29 @@ +{ + "iisSettings": { + "windowsAuthentication": false, + "anonymousAuthentication": true, + "iisExpress": { + "applicationUrl": "http://localhost:57506/", + "sslPort": 0 + } + }, + "profiles": { + "IIS Express": { + "commandName": "IISExpress", + "launchBrowser": true, + "launchUrl": "api/values", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + }, + "uMatrixCleanerOL": { + "commandName": "Project", + "launchBrowser": true, + "launchUrl": "api/values", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + }, + "applicationUrl": "http://localhost:57507/" + } + } +} diff --git a/uMatrixCleanerOnline/Startup.cs b/uMatrixCleanerOnline/Startup.cs new file mode 100644 index 0000000..b70c3a6 --- /dev/null +++ b/uMatrixCleanerOnline/Startup.cs @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Hosting; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Options; + +namespace uMatrixCleanerOL +{ + public class Startup + { + public Startup(IConfiguration configuration) + { + Configuration = configuration; + } + + public IConfiguration Configuration { get; } + + // This method gets called by the runtime. Use this method to add services to the container. + public void ConfigureServices(IServiceCollection services) + { + services.AddMvc(o => o.InputFormatters.Insert(0, new RawRequestBodyFormatter())); + + } + + // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. + public void Configure(IApplicationBuilder app, IHostingEnvironment env) + { + if (env.IsDevelopment()) + { + app.UseDeveloperExceptionPage(); + } + + app.UseMvc(); + } + } +} diff --git a/uMatrixCleanerOnline/TextMediaTypeFormatter.cs b/uMatrixCleanerOnline/TextMediaTypeFormatter.cs new file mode 100644 index 0000000..31aa1b3 --- /dev/null +++ b/uMatrixCleanerOnline/TextMediaTypeFormatter.cs @@ -0,0 +1,81 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Mvc.Formatters; +using Microsoft.Net.Http.Headers; + +namespace uMatrixCleanerOL +{ + /// + /// Formatter that allows content of type text/plain and application/octet stream + /// or no content type to be parsed to raw data. Allows for a single input parameter + /// in the form of: + /// + /// public string RawString([FromBody] string data) + /// public byte[] RawData([FromBody] byte[] data) + /// + public class RawRequestBodyFormatter : InputFormatter + { + public RawRequestBodyFormatter() + { + SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/plain")); + SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/octet-stream")); + } + + + /// + /// Allow text/plain, application/octet-stream and no content type to + /// be processed + /// + /// + /// + public override Boolean CanRead(InputFormatterContext context) + { + if (context == null) throw new ArgumentNullException(nameof(context)); + + var contentType = context.HttpContext.Request.ContentType; + if (string.IsNullOrEmpty(contentType) || contentType == "text/plain" || + contentType == "application/octet-stream") + return true; + + return false; + } + + /// + /// Handle text/plain or no content type for string results + /// Handle application/octet-stream for byte[] results + /// + /// + /// + public override async Task ReadRequestBodyAsync(InputFormatterContext context) + { + var request = context.HttpContext.Request; + var contentType = context.HttpContext.Request.ContentType; + + + if (string.IsNullOrEmpty(contentType) || contentType == "text/plain") + { + using (var reader = new StreamReader(request.Body)) + { + var content = await reader.ReadToEndAsync(); + return await InputFormatterResult.SuccessAsync(content); + } + } + if (contentType == "application/octet-stream") + { + using (var ms = new MemoryStream(2048)) + { + await request.Body.CopyToAsync(ms); + var content = ms.ToArray(); + return await InputFormatterResult.SuccessAsync(content); + } + } + + return await InputFormatterResult.FailureAsync(); + } + } + + +} diff --git a/uMatrixCleanerOnline/appsettings.Development.json b/uMatrixCleanerOnline/appsettings.Development.json new file mode 100644 index 0000000..fa8ce71 --- /dev/null +++ b/uMatrixCleanerOnline/appsettings.Development.json @@ -0,0 +1,10 @@ +{ + "Logging": { + "IncludeScopes": false, + "LogLevel": { + "Default": "Debug", + "System": "Information", + "Microsoft": "Information" + } + } +} diff --git a/uMatrixCleanerOnline/appsettings.json b/uMatrixCleanerOnline/appsettings.json new file mode 100644 index 0000000..26bb0ac --- /dev/null +++ b/uMatrixCleanerOnline/appsettings.json @@ -0,0 +1,15 @@ +{ + "Logging": { + "IncludeScopes": false, + "Debug": { + "LogLevel": { + "Default": "Warning" + } + }, + "Console": { + "LogLevel": { + "Default": "Warning" + } + } + } +} diff --git a/uMatrixCleanerOnline/uMatrixCleanerOnline.csproj b/uMatrixCleanerOnline/uMatrixCleanerOnline.csproj new file mode 100644 index 0000000..e63e650 --- /dev/null +++ b/uMatrixCleanerOnline/uMatrixCleanerOnline.csproj @@ -0,0 +1,20 @@ + + + + netcoreapp2.0 + + + + + + + + + + + + + + + + From 4b679a8e4c11b16473bd481279aedba6fcddde4a Mon Sep 17 00:00:00 2001 From: ari wei Date: Mon, 6 Aug 2018 05:46:13 +0800 Subject: [PATCH 09/24] add default.html implement basic elements. --- uMatrixCleanerOnline/default.html | 38 +++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 uMatrixCleanerOnline/default.html diff --git a/uMatrixCleanerOnline/default.html b/uMatrixCleanerOnline/default.html new file mode 100644 index 0000000..eb39658 --- /dev/null +++ b/uMatrixCleanerOnline/default.html @@ -0,0 +1,38 @@ + + + + + + +

Parameters:

+ + + + +
+
+
+
+ + +
+ + +
+ +
+ +
+ + + \ No newline at end of file From 0c040d8396a844b85c0608ce6067663aa39ad430 Mon Sep 17 00:00:00 2001 From: ari wei Date: Mon, 6 Aug 2018 06:43:11 +0800 Subject: [PATCH 10/24] modify the default.html --- uMatrixCleanerOnline/default.html | 60 +++++++++++++++++++------------ 1 file changed, 37 insertions(+), 23 deletions(-) diff --git a/uMatrixCleanerOnline/default.html b/uMatrixCleanerOnline/default.html index eb39658..5186d53 100644 --- a/uMatrixCleanerOnline/default.html +++ b/uMatrixCleanerOnline/default.html @@ -1,38 +1,52 @@ - + + - - + } + + #left, + #right { + float: left; + width: 50% + } + + #main { + margin: auto; + } + + + + +

Parameters:

- -
-
-
-
+
+
+
+
- -
+ +
- -
+ + +
+
- + +
- \ No newline at end of file From fc87663f3da458ae804fd0d5d01b48dfe77e9080 Mon Sep 17 00:00:00 2001 From: gqqnbig Date: Sun, 5 Aug 2018 16:08:11 -0700 Subject: [PATCH 11/24] Remove unnecessary files --- .../Controllers/DefaultController.cs | 16 ------- .../Controllers/ValuesController.cs | 44 ------------------- 2 files changed, 60 deletions(-) delete mode 100644 uMatrixCleanerOnline/Controllers/DefaultController.cs delete mode 100644 uMatrixCleanerOnline/Controllers/ValuesController.cs diff --git a/uMatrixCleanerOnline/Controllers/DefaultController.cs b/uMatrixCleanerOnline/Controllers/DefaultController.cs deleted file mode 100644 index e7c43f0..0000000 --- a/uMatrixCleanerOnline/Controllers/DefaultController.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using Microsoft.AspNetCore.Http; -using Microsoft.AspNetCore.Mvc; - -namespace uMatrixCleanerOL.Controllers -{ - [Produces("application/json")] - [Route("api/Default")] - public class DefaultController : Controller - { - - } -} diff --git a/uMatrixCleanerOnline/Controllers/ValuesController.cs b/uMatrixCleanerOnline/Controllers/ValuesController.cs deleted file mode 100644 index a7d42cc..0000000 --- a/uMatrixCleanerOnline/Controllers/ValuesController.cs +++ /dev/null @@ -1,44 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using Microsoft.AspNetCore.Mvc; - -namespace uMatrixCleanerOL.Controllers -{ - [Route("api/[controller]")] - public class ValuesController : Controller - { - // GET api/values - [HttpGet] - public IEnumerable Get() - { - return new string[] { "value1", "value2" }; - } - - // GET api/values/5 - [HttpGet("{id}")] - public string Get(int id) - { - return "value"; - } - - // POST api/values - [HttpPost] - public void Post([FromBody]string value) - { - } - - // PUT api/values/5 - [HttpPut("{id}")] - public void Put(int id, [FromBody]string value) - { - } - - // DELETE api/values/5 - [HttpDelete("{id}")] - public void Delete(int id) - { - } - } -} From 20fa1c0067e0657d53779589c641adf4be97f983 Mon Sep 17 00:00:00 2001 From: gqqnbig Date: Sun, 5 Aug 2018 16:10:45 -0700 Subject: [PATCH 12/24] Add sample code to write a file to file system --- uMatrixCleanerOnline/Controllers/CleanerController.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/uMatrixCleanerOnline/Controllers/CleanerController.cs b/uMatrixCleanerOnline/Controllers/CleanerController.cs index 2aabcda..67982ff 100644 --- a/uMatrixCleanerOnline/Controllers/CleanerController.cs +++ b/uMatrixCleanerOnline/Controllers/CleanerController.cs @@ -30,6 +30,7 @@ public string Get(int id) [HttpPost] public string Post([FromBody]string value) { + System.IO.File.WriteAllText("input.txt", value); return $"{value.Split('\r', '\n').Length} rules available."; } From 9aa6952795ae4dbc007f6464009e6ea44c8792c1 Mon Sep 17 00:00:00 2001 From: gqqnbig Date: Sun, 5 Aug 2018 17:58:09 -0700 Subject: [PATCH 13/24] Add MVC to serve static files, and move HTML page to correct location --- uMatrixCleanerOnline/Startup.cs | 1 + uMatrixCleanerOnline/{ => wwwroot}/default.html | 0 2 files changed, 1 insertion(+) rename uMatrixCleanerOnline/{ => wwwroot}/default.html (100%) diff --git a/uMatrixCleanerOnline/Startup.cs b/uMatrixCleanerOnline/Startup.cs index b70c3a6..597c64b 100644 --- a/uMatrixCleanerOnline/Startup.cs +++ b/uMatrixCleanerOnline/Startup.cs @@ -35,6 +35,7 @@ public void Configure(IApplicationBuilder app, IHostingEnvironment env) app.UseDeveloperExceptionPage(); } + app.UseStaticFiles(); app.UseMvc(); } } diff --git a/uMatrixCleanerOnline/default.html b/uMatrixCleanerOnline/wwwroot/default.html similarity index 100% rename from uMatrixCleanerOnline/default.html rename to uMatrixCleanerOnline/wwwroot/default.html From d7afe091b4fb53dca46a52b5dba5af5f2b1b26cf Mon Sep 17 00:00:00 2001 From: zhuyufei <469277708@qq.com> Date: Mon, 6 Aug 2018 09:04:38 +0800 Subject: [PATCH 14/24] change the default page --- uMatrixCleanerOnline/Properties/launchSettings.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uMatrixCleanerOnline/Properties/launchSettings.json b/uMatrixCleanerOnline/Properties/launchSettings.json index c0f9968..4d9712e 100644 --- a/uMatrixCleanerOnline/Properties/launchSettings.json +++ b/uMatrixCleanerOnline/Properties/launchSettings.json @@ -19,11 +19,11 @@ "uMatrixCleanerOL": { "commandName": "Project", "launchBrowser": true, - "launchUrl": "api/values", + "launchUrl": "default.html", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" }, "applicationUrl": "http://localhost:57507/" } } -} +} \ No newline at end of file From 2b951444bfd00968518463c4ef429e43e3dec344 Mon Sep 17 00:00:00 2001 From: zhuyufei <469277708@qq.com> Date: Mon, 6 Aug 2018 09:20:48 +0800 Subject: [PATCH 15/24] change to proper form format --- uMatrixCleanerOnline/wwwroot/default.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/uMatrixCleanerOnline/wwwroot/default.html b/uMatrixCleanerOnline/wwwroot/default.html index 5186d53..b260d18 100644 --- a/uMatrixCleanerOnline/wwwroot/default.html +++ b/uMatrixCleanerOnline/wwwroot/default.html @@ -27,11 +27,11 @@
-
+

-
@@ -41,11 +41,11 @@
+ - +
-
From 5e1fd6de8adb06a99d197eec1fddf274dcc9f3f8 Mon Sep 17 00:00:00 2001 From: gqqnbig Date: Sun, 5 Aug 2018 18:31:05 -0700 Subject: [PATCH 16/24] Allow to post form form --- uMatrixCleanerOnline/Controllers/CleanerController.cs | 2 +- uMatrixCleanerOnline/Startup.cs | 3 +-- uMatrixCleanerOnline/wwwroot/default.html | 3 +-- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/uMatrixCleanerOnline/Controllers/CleanerController.cs b/uMatrixCleanerOnline/Controllers/CleanerController.cs index 67982ff..956c280 100644 --- a/uMatrixCleanerOnline/Controllers/CleanerController.cs +++ b/uMatrixCleanerOnline/Controllers/CleanerController.cs @@ -28,7 +28,7 @@ public string Get(int id) // POST: api/Default [HttpPost] - public string Post([FromBody]string value) + public string Post(string value) { System.IO.File.WriteAllText("input.txt", value); return $"{value.Split('\r', '\n').Length} rules available."; diff --git a/uMatrixCleanerOnline/Startup.cs b/uMatrixCleanerOnline/Startup.cs index 597c64b..31bf330 100644 --- a/uMatrixCleanerOnline/Startup.cs +++ b/uMatrixCleanerOnline/Startup.cs @@ -23,8 +23,7 @@ public Startup(IConfiguration configuration) // This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { - services.AddMvc(o => o.InputFormatters.Insert(0, new RawRequestBodyFormatter())); - + services.AddMvc(); } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. diff --git a/uMatrixCleanerOnline/wwwroot/default.html b/uMatrixCleanerOnline/wwwroot/default.html index b260d18..b28d033 100644 --- a/uMatrixCleanerOnline/wwwroot/default.html +++ b/uMatrixCleanerOnline/wwwroot/default.html @@ -31,8 +31,7 @@

- +
-
+
@@ -59,54 +61,55 @@ -
+

- - - - + + + + + + From 5d9b702999023c303872a50840f9469d1505ed57 Mon Sep 17 00:00:00 2001 From: zhuyufei <469277708@qq.com> Date: Sun, 12 Aug 2018 02:35:01 +0800 Subject: [PATCH 22/24] =?UTF-8?q?=E4=BD=BF=E7=94=A8async=20post?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- uMatrixCleanerOnline/wwwroot/default.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uMatrixCleanerOnline/wwwroot/default.html b/uMatrixCleanerOnline/wwwroot/default.html index 822eaa1..cfce218 100644 --- a/uMatrixCleanerOnline/wwwroot/default.html +++ b/uMatrixCleanerOnline/wwwroot/default.html @@ -86,7 +86,7 @@ type: 'POST', data: { value, para1, para2 }, dataType: 'json', - async: false, + success: function (data) { $('#rightTextArea').val(data); From 0e41f7f7aad56297a888272dafe4bbb7228a18b7 Mon Sep 17 00:00:00 2001 From: zhuyufei <469277708@qq.com> Date: Sun, 12 Aug 2018 02:43:07 +0800 Subject: [PATCH 23/24] =?UTF-8?q?=E5=8C=B9=E9=85=8DAPI=E7=BB=88=E7=BB=93?= =?UTF-8?q?=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- uMatrixCleanerOnline/wwwroot/default.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/uMatrixCleanerOnline/wwwroot/default.html b/uMatrixCleanerOnline/wwwroot/default.html index cfce218..bd827fc 100644 --- a/uMatrixCleanerOnline/wwwroot/default.html +++ b/uMatrixCleanerOnline/wwwroot/default.html @@ -36,13 +36,13 @@
-
+