问题列表 - 第17765页

C#Byte []到Url友好字符串

我正在为一个我正在整理的简单网站开发快速验证码生成器,我希望在页面的URL中传递加密密钥.我可能很容易做到这一点作为一个查询字符串参数,但我希望不是这样(只是因为没有其他任何东西跑掉查询字符串)...

我的加密代码生成一个byte [],然后使用Convert.ToBase64String(byte [])将其转换为字符串.但是,这个字符串仍然不是友好的url,因为它可以包含'/'和'='之类的东西.有没有人知道.NET框架中更好的函数将字节数组转换为url友好字符串?

我知道所有关于System.Web.HttpUtility.UrlEncode()及其等价物,但是,它们只适用于查询字符串参数.如果我在路径内部对"="进行url编码,我的Web服务器会返回400 Bad Request错误.

无论如何,不​​是一个关键问题,但希望有人能给我一个很好的解决方案

**编辑:只是为了绝对确定我正在用字符串做什么,我想我会提供更多信息.

由我的加密算法产生的byte []应该通过某种算法提供,以使其成为url友好字符串.在此之后,它将成为XElement的内容,然后将其用作XSLT转换的源文档,并用作锚点的href属性的一部分.我不相信xslt转换导致问题,因为路径上出现的内容似乎是编码的查询字符串参数,但会导致HTTP 400

我也在base64字符串上尝试过HttpUtility.UrlPathEncode(),但这似乎也没有做到(我仍然在我的网址中以'/'结尾)**

c# base64 friendly-url

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

SQL:用';'分隔的多个命令 原子与否?

有关用';'分隔的命令的任何信息吗?在一个查询中 - 它们是原子还是非原子?我对流行数据库的实际版本感兴趣:MySQL,MSSQL,SQLite等?例如,如果100个客户端将在查询后发送垃圾邮件:

"insert into test ( name ) values ( '1' ); insert into test ( name ) values ( '2' )"
Run Code Online (Sandbox Code Playgroud)

数据库是否包含序列"1","2","1","2"等的项目,或者每个命令可以除以";" 从100个客户到每个人的比赛,导致'1','1','2','1','2','2','2'等?

sql

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

不等于和大于数字之间的差异

我有一个问题:

select *
from randomtable
where randomnumber <> 0

"random_number"列永远不会是负数.

所以,如果我将查询写为:

select *
from randomtable
where randomnumber > 0

有什么重大区别吗?

sql oracle

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

如何让MSTest找到我的测试数据文件?

我有一些测试需要从excel文件中提供外部数据.这些文件包含在测试项目中,在Visual Studio中,我编辑了测试设置文件(Local.testsettings)来部署数据文件.这使它工作正常我VS.

但是,我们也在与TeamCity进行持续集成,而在TeamCity中,这不起作用.我的数据文件不可用于测试.似乎测试是从名为"C:\ TeamCity\buildAgent\temp\buildTmp\ciuser_AS40VS6 2009-12-11 09_40_17\Out"的临时文件夹运行的,并且数据文件不会在那里复制.

我已经尝试将数据文件的构建操作更改为"资源"并将复制到输出目录设置为"始终",但这没有帮助.

有谁知道如何使这项工作?

我正在运行Visual Studio 2010 beta 2和TeamCity 4.5.5,这就是为什么我首先运行MSTest,而不是NUnit ...

teamcity mstest

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

HttpResponse.End vs HttpResponse.Close vs HttpResponse.SuppressContent

在ASPX页面中,我希望在特定点(不是由于错误条件)结束响应,具体取决于代码路径,以便在流中不发送任何其他内容.所以自然使用:

Response.End();
Run Code Online (Sandbox Code Playgroud)

这会导致ThreadAbortException,这是设计使然.

以下似乎有效,但看起来不像这个问题的正确方法:

Response.Flush();
Response.Close();
Run Code Online (Sandbox Code Playgroud)

那么,这个怎么样?

Response.Flush();
Response.SuppressContent = true
Run Code Online (Sandbox Code Playgroud)

然后让页面正常完成.

我可以处理并吞下ThreadAbortException,但我只是想知道SuppressContent方法是否有任何错误/陷阱?

编辑: 举几个例子.假设我有一个ASPX页面,我可以将内容类型更改为多种可能性之一.根据内容类型和方案,在代码中的给定点我想阻止将更多内容发送到客户端.假设在SuppressContent设置为true后,运行任何进一步的服务器端代码都没有问题.我只是不想将任何其他内容发送给客户端.

编辑2: MyPage.aspx - 有一个母版页,可能包括标准内容,页眉,页脚等.此页面可以呈现为普通页面.它还可以写出要下载的(例如)XML文档.如果写出一个XML文档(在页面加载时确定),它将清除输出,将内容类型设置为XML,将所有XML写出,然后如果正常,最终将使用其余的ASPX页面呈现为坚持到底 - 这显然不是必需的/打破XML.

编辑3: 现在我正在使用SuppressContent方法.为了尝试结束这个问题,我提出了一个赏金,并且会以另一种方式提出问题:你什么时候应该使用SuppressContent?为什么要使用它而不是Response.End?


请参阅我在下面提供的答案,我实际上最终得到了解决方案,因为我最终找到了一种方法来避免使用Response.End时出现ThreadAbortException.到目前为止,我已经排除了答案.


.net c# asp.net response

36
推荐指数
3
解决办法
2万
查看次数

PHP删除JavaScript

我试图从HTML中删除JavaScript.

我无法使用正则表达式来使用PHP; 它给了我一个空数组.为什么?

<?php
$var = '
<script type="text/javascript"> 
function selectCode(a) 
{ 
   var e = a.parentNode.parentNode.getElementsByTagName(PRE)[0]; 
   if (window.getSelection) 
   { 
      var s = window.getSelection(); 
       if (s.setBaseAndExtent) 
      { 
         s.setBaseAndExtent(e, 0, e, e.innerText.length - 1); 
      } 
      else 
      { 
         var r = document.createRange(); 
         r.selectNodeContents(e); 
         s.removeAllRanges(); 
         s.addRange(r); 
      } 
   } 
   else if (document.getSelection) 
   { 
      var s = document.getSelection(); 
      var r = document.createRange(); 
      r.selectNodeContents(e); 
      s.removeAllRanges(); 
      s.addRange(r); 
   } 
   else if (document.selection) 
   { 
      var r = document.body.createTextRange(); 
      r.moveToElementText(e); 
      r.select(); 
   } 
} 
</script>
';

   function remove_javascript($java){
   echo preg_replace('/<script\b[^>]*>(.*?)<\/script>/i', "", $java); …
Run Code Online (Sandbox Code Playgroud)

javascript php

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

使用pyExcelerator使用Django生成动态Excel文件.确保唯一临时文件名

我想根据Django的请求生成动态Excel文件.库pyExcelerator执行此操作,但我没有找到任何方法来使用Excel文件的内容,而不生成服务器端临时Excel文件,读取它,使用其内容并删除它.

问题是pyExcelerator只提取Excel文件内容的方法是通过以下方式保存它:

workbook = pyExcelerator.Workbook()
workbook.save("tmp_filename")
Run Code Online (Sandbox Code Playgroud)

然后读取临时文件内容.我不能使用标准库"tempfile",因为它不接受文件,只接受文件名.如何确保文件名是唯一的,并且文件一旦被使用就会被删除?

python django excel pyexcelerator temporary-files

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

Scrum和Story Points - 为什么理想的人日不理想的工时?

我习惯于以Joel Spolsky建议的方式思考时间估计 - 如果预定项目需要超过16小时,则应将其划分为较小的任务.现在,我正在我的团队中实施Scrum以及基于Story Points的估算.在我看来,一个故事点的好单位将是理想的工时,而不是人日.如果我用了几天,我的大多数问题都会估计为1/2或1.

你有什么想法,为什么在Scrum文献中最常提到使用理想的人日?

agile scrum estimation time-estimation

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

URL安全性

我已经为URL的安全性做了以下功能.我只是想知道我需要在下面的代码中重新考虑或改变.从各种来源阅读了一些关于安全性的文章后,我已经完成了这个功能.

这是功能:

// filters possible malacious stuff from URLs
private function filter_url($url)
{
  if (is_array($url))
  {
    foreach($url as $key => $value)
    {
        // recurssion
        $url[$key] = filter_url($value);
    }

    return $url;
}
else
{
    // Allow only one ? in URLs
    $total_question_marks = substr_count($url, '?');

    if ($total_question_marks >= 2)
    {
        exit('You can not use 2 question marks (?) in URLs for security reasons!!');
    }

    // decode URLs
    $url = rawurldecode($url);
    $url = urldecode($url);
    // remove bad stuff
    $url = str_replace('../', '', …
Run Code Online (Sandbox Code Playgroud)

php security

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

什么是Visual Studio中使用的.rc2文件

我是Windows开发环境的新手.我看到很多.rc2文件用于对某些MACRO类型常量执行映射到字符串.

Q1.为什么使用这些.rc2文件?

有人可以给我一个开始这些.

c++ windows visual-studio

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