小编rog*_*uce的帖子

使用asp:Button将参数传递给函数

我想传递一个参数成函数onClickasp:Button

    <asp:Button name='ProductID' onclick="confirm_product_Click" ID="confirmitem" runat="server" Text="accept">
Run Code Online (Sandbox Code Playgroud)

参数是<%=product.ProductId %>.

我无法使用,CommandArguments因为该值像纯文本一样传递.

我尝试了隐藏的输入,但它失败了.

我也尝试过使用表单操作:

<form method="post" action="?ProductID=<%=product.ProductId %>"> 
<asp:Button name='ProductID' onclick="confirm_product_Click" ID="confirmitem" runat="server" Text="accept">
</form>
Run Code Online (Sandbox Code Playgroud)

但它不会将值发送给函数.有人可以帮我解决这个问题吗?

forms asp.net aspbutton

8
推荐指数
1
解决办法
2万
查看次数

ASP.NET Core Serilog 未将属性推送到其自定义列

appsettings.json我的 Serilog 安装有此设置

"Serilog": {
  "MinimumLevel": "Information",
  "Enrich": [ "LogUserName" ],
  "Override": {
    "Microsoft": "Critical"
  },
  "WriteTo": [
    {
      "Name": "MSSqlServer",
      "Args": {
        "connectionString": "Server=.\\SQLEXPRESS;Database=Apple;Trusted_Connection=True;MultipleActiveResultSets=true;,
        "schemaName": "Apple",
        "tableName": "EventLogs",
        "columnOptionsSection": {
          "customColumns": [
            {
              "ColumnName": "UserName",
              "DataType": "nvarchar",
              "DataLength": 256,
              "AllowNull": true
            }
          ]
        }
      }
    }
  ]
},
Run Code Online (Sandbox Code Playgroud)

我还有一个名为的自定义丰富器LogUserName,它应该将用户用户名添加到UserName数据库中调用的列中。

这是丰富器:

public class LogUserName
{
    private readonly RequestDelegate next;

    public LogUserName(RequestDelegate next)
    {
        this.next = next;
    }

    public async Task InvokeAsync(HttpContext context)
    {
        LogContext.PushProperty("UserName", context.User.Identity.Name); …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc asp.net-core

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

使用HTTP_REFERER阻止用户访问网站内部

我可以控制HttpServer,但不能控制位于那里的ApplicationServer或Java应用程序,但是我需要阻止直接访问那些应用程序上的某些页面。确切地说,我不希望用户自动访问向适当的Servlet发出直接GET / POST HTTP请求的表单的访问。

因此,我决定根据的值屏蔽用户HTTP_REFERER。毕竟,如果用户在站点内导航,它将具有适当的HTTP_REFERER。好吧,那是我的想法。

我在.htaccess文件中实现了一个重写规则,内容为:

RewriteEngine on 

# Options +FollowSymlinks
RewriteCond %{HTTP_REFERER} !^http://mywebaddress(.cl)?/.* [NC]
RewriteRule (servlet1|servlet2)/.+\?.+ - [F]
Run Code Online (Sandbox Code Playgroud)

我希望禁止访问那些未导航站点但使用查询字符串向“ servlet1”或“ servlet2” servlet发出直接GET请求的用户。但是我的期望突然结束了,因为正则表达式(servlet1|servlet2)/.+\?.+根本不起作用。

当我将表达式更改为时,我真的很失望,(servlet1|servlet2)/.+并且效果如此之好,以至于无论用户是否浏览该网站,我的用户都被阻止了。

因此,我的问题是:如果我没有访问权限/时间/权限来修改应用程序,如何允许不允许“机器人”直接访问某些页面的事情呢?

apache security mod-rewrite http-referer

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

即使标头存在,HSTS 显示已禁用

我的公司正在使用 Tenable 来识别安全漏洞。最近发现了丢失的 HSTS。我们的服务器使用的是 IIS 10。

我已经添加了多个博客中概述的 HSTS 标头,以及此处的问题。

我的根 web.config 如下所示:


<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <appSettings>
        <add key="Environment" value="Local" />
    </appSettings>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="HTTP to HTTPS redirect global" stopProcessing="true" >
                    <match url="(.*)" />
                    <conditions>
                        <add input="{HTTPS}" pattern="off" ignoreCase="true" />
                    </conditions>
                    <action type="Redirect" url="https://{HTTP_HOST}/{R:1}"
                        redirectType="Permanent" />
                </rule>
            </rules>
            <outboundRules>
                <rule name="Add Strict-Transport-Security when HTTPS" enabled="true">
                    <match serverVariable="RESPONSE_Strict_Transport_Security"
                        pattern=".*" />
                    <conditions>
                        <add input="{HTTPS}" pattern="on" ignoreCase="true" />
                    </conditions>
                    <action type="Rewrite" value="max-age=31536000; includeSubDomains; preload" />
                </rule>
            </outboundRules>
        </rewrite>
    </system.webServer>
</configuration>

Run Code Online (Sandbox Code Playgroud)

问题:应用更改后,Tenable …

iis hsts iis-10

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

应用程序启动时初始化角度服务(工厂)

在我的Angular应用程序中,我添加了跟踪功能,它应该作为单独的插件工作,因此如果包含在HTML Angular中的脚本应该创建服务并初始化(运行)它.插件是服务,因为它具有强制依赖性$rootScope.为了实现我选择使用Angular工厂,就像(代码在myservice.js):

angular.module('app').factory('mysevice', ['$rootScope', '$interval', serviceFunc]);

function serviceFunc($rootScope, $interval) {

    return {
        run: function () { ... } 
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我有问题如何立即初始化它.我的解决方案是增强Angular app run功能(代码在myservice.js中):

window.app.run(['mysevice', function (srvc) {
        srvc.run();
    }]);
Run Code Online (Sandbox Code Playgroud)

app在单独的主app.js文件中定义的位置如下:

var app = window.app = angular.module('app', [...]);
app.run(['$state', 'breeze', ...,
function ($state,  breeze, ...) { ..real initialization..  }
Run Code Online (Sandbox Code Playgroud)

代码工作正常.这两个主要runrun用于myservice通话的罚款.应用程序与服务一起运行良好,但代码看起来很难看,特别是将应用程序存储在全局窗口对象中并组播该run功能.

是否有更好的方法来执行Angular服务并在应用程序启动后立即初始化它与其他一些Angular服务依赖项.

javascript angularjs angularjs-service angularjs-factory

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

iptables:无链/目标/匹配错误(使用docker网络创建)

创建网络(docker network create -d bridge my-nw)时,出现以下错误:

来自守护程序的错误响应:无法设置IP表:无法启用SKIP DNAT规则:( iptables失败:iptables --wait -t nat -I DOCKER -i br-bedba04c7349 -j返回:iptables:无链接/目标/匹配这个名字。

我该怎么办?Docker或IP Table修改?

networking iptables docker

4
推荐指数
2
解决办法
2558
查看次数

如何克隆HttpPostedFile

我有一个允许用户上载文件的应用程序,在保存文件之前,已使用Symantec保护引擎对其进行了扫描。我遇到的问题是,使用保护引擎扫描文件后,它们的字节数为0。我正在尝试解决这个问题。

我尝试了这里提到的克隆解决方案: 深度克隆对象,但是我上传的文件并非全部可序列化。我还尝试过在扫描引擎类中将流重置为0,然后再将其传递回保存。

我已经与Symantec联系,他们说为此应用程序编写的自定义连接类看起来正确,并且保护引擎没有抛出错误。

我愿意解决这个问题。

这是文件上传的代码:

private void UploadFiles()
{
    System.Web.HttpPostedFile objFile;
    string strFilename = string.Empty;
    if (FileUpload1.HasFile)
    {

        objFile = FileUpload1.PostedFile;
        strFilename = FileUpload1.FileName;


        if (GetUploadedFilesCount() < 8)
        {
            if (IsDuplicateFileName(Path.GetFileName(objFile.FileName)) == false)
            {
                if (ValidateUploadedFiles(FileUpload1.PostedFile) == true)
                {
                    //stores full path of folder
                    string strFileLocation = CreateFolder();

                    //Just to know the uploading folder
                    mTransactionInfo.FileLocation = strFileLocation.Split('\\').Last();
                    if (ScanUploadedFile(objFile) == true)
                    {
                            SaveFile(objFile, strFileLocation);
                    }
                    else
                    {
                        lblErrorMessage.Visible = true;
                        if (mFileStatus != null)
                        { lblErrorMessage.Text = mFileStatus.ToString(); …
Run Code Online (Sandbox Code Playgroud)

c# asp.net

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

是否可以将byte []转换为HttpPostedFile?

是否可以将byte []转换为HttpPostedFile?

System.Web.HttpPostedFile objFile = fileData;
Run Code Online (Sandbox Code Playgroud)

其中fileData是图像的字节数组,给出"无法隐式转换的错误".

.net c#

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

PySpark 中日期时间的舍入时间

我正在尝试使用 pyspark 和 udf 来调整小时数。

该函数在 python 中工作正常,但在使用 pyspark 时效果不佳。

输入是:

date = Timestamp('2016-11-18 01:45:55') # type is pandas._libs.tslibs.timestamps.Timestamp

def time_feature_creation_spark(date):
    return date.round("H").hour

time_feature_creation_udf = udf(lambda x : time_feature_creation_spark(x), IntegerType())
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

然后我在提供 spark 的函数中使用它:

data = data.withColumn("hour", time_feature_creation_udf(data["date"])

错误是:

类型错误:“列”对象不可调用

预期输出只是日期时间中最接近的小时(例如 20h45 最接近 21h,因此返回 21)

python user-defined-functions apache-spark pyspark

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

从满足条件的struct中提取值

我有一个针对不同动物的结构,以及这些动物的价值观.我给它添加了动物.

struct Animal {
var type: String
var weight: String
var cost: String
}

var animals = [Animal]()

func addAnimal(type: String, weight: String, cost: String){
    animals.append(Animal(type: type, weight: weight, cost: cost))
}


addAnimal("monkey", "80", "300")
addAnimal("zebra", "200", "500")
addAnimal("monkey", "50", "250")
Run Code Online (Sandbox Code Playgroud)

我想说,if type == "monkey"然后返回猴子的所有重量.在这个例子中,我希望代码返回值"80"和"50".

我是编码的新手,所以对此有任何建议会有所帮助.谢谢

swift

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

避免完全检查if语句

下面的代码示例应该评估一个字符串.

function EvaluateString(const S: Ansistring): Ansistring;
var
  i, L: Integer;
begin
  L := Length(S);
  i:=1;
  if (L > 0) and (S[i] > ' ') and (S[L] > ' ') then
     .....


end;
Run Code Online (Sandbox Code Playgroud)

但如果L = 0,(S[i] > ' ')则会产生Access违规.我能在保持这种if状况的同时避免这个问题吗?

delphi

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