小编sti*_*vlo的帖子

使用 Ruby 的 Net:HTTP 保留 HTTP 标头中的大小写

尽管 HTTP 规范规定标头不区分大小写;Paypal 及其新的自适应支付 API 要求其标头区分大小写。

使用 ActiveMerchant 的 paypal 自适应支付扩​​展 ( http://github.com/lamp/paypal_adaptive_gateway ) 似乎虽然标头全部设置为大写,但它们以混合大小写发送。

下面是发送 HTTP 请求的代码:

headers = {
  "X-PAYPAL-REQUEST-DATA-FORMAT" => "XML",
  "X-PAYPAL-RESPONSE-DATA-FORMAT" => "JSON",
  "X-PAYPAL-SECURITY-USERID" => @config[:login],
  "X-PAYPAL-SECURITY-PASSWORD" => @config[:password],
  "X-PAYPAL-SECURITY-SIGNATURE" => @config[:signature],
  "X-PAYPAL-APPLICATION-ID" => @config[:appid]
}
build_url action

request = Net::HTTP::Post.new(@url.path)

request.body = @xml
headers.each_pair { |k,v| request[k] = v }
request.content_type = 'text/xml'

proxy = Net::HTTP::Proxy("127.0.0.1", "60723")

server = proxy.new(@url.host, 443)
server.use_ssl = true

server.start { |http| http.request(request) }.body
Run Code Online (Sandbox Code Playgroud)

(我添加了代理线,这样我就可以看到 Charles 发生了什么 - http://www.charlesproxy.com/) …

ruby networking paypal http

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

如何将Java类转换为其子类之一(SocketAddress和InetSocketAddress)

我试图以字符串形式获取套接字连接的IP.

我正在使用一个框架,它返回SocketAddress收到的消息.我怎样才能把它变成InetSocketAddressInetAddress

java sockets networking class inetaddress

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

如何在Java中添加日期到日期

我想在日期中添加几天以获得Java的新日期.如何使用Calendar该类实现它.

Calendar dom = new GregorianCalendar(d, m, y);
Run Code Online (Sandbox Code Playgroud)

是我的制造日期的实例,我想达到到期日期,在当前日期添加大约100天并将其存储在变量中doe但不能这样做.

java date

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

遍历列表,执行一个方法:扩展可能吗?

我有这样的数据结构

public class Employee
{
    public string Name { get; set; }
    public IEnumerable<Employee> Employees { get; private set; }
    // ...
}
Run Code Online (Sandbox Code Playgroud)

现在我需要遍历整个结构并对每个项目执行一个方法.

如何在IEnumerable上为这样的遍历函数创建扩展.

Wonderfull会是这样的

employeList.Traverse(e => Save(e), e.Employees.Count > 0);
Run Code Online (Sandbox Code Playgroud)

或者这是不可能的,我必须在我的业务逻辑中创建一个特殊的方法?

非常感谢.

.net c# linq lambda .net-3.5

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

如何在node.js中监听随机tcp套接字

我知道我可以在node.js中创建一个类似tcp的服务器

var dataServer = net.createServer(function (stream) { 
}); 

dataServer.on("listening", function() { 
    // this data server listen to a random port 
    // but how can I get the number of port 
    console.log(dataServer.localPort) 
} 

dataServer.listen(0, '0.0.0.0'); 
Run Code Online (Sandbox Code Playgroud)

但我不知道如何获取端口号并发送到另一个服务.

或者我应该找到一个随机可用端口并传递给dataServer.listen?

port networking tcp listen node.js

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

C#NET服务器/客户端应用程序

我开始使用一个相当基本的服务器/客户端应用程序(逻辑上明智),但我对我应该用于什么需求感到困惑.看起来有几个选项,但基本上我将拥有一个主服务器和X个客户端应用程序(每个专用机器一个).这个设置的主要目的是让我基本上可以做到以下几点......

- 通过ASP前端向服务器(控制台应用程序)发出命令,以在其中一个远程客户端上安装软件. - 服务器告诉客户端将zip包(从各种FTP站点)下载到位置并将其提取到特定路径.

我不是肯定的,但看起来C#有Sockets,然后是某种WebClient类型的交易.我假设套接字将是最好的路由,并使用异步(每个远程客户端在其自己的线程中连接,与其他人单独处理服务器).

有关这方面的任何信息都会很棒!

.net c# client

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

通过反思获取对象

我正在寻找c#这样的机制:

Car car1;
Car car2;

Car car = (Car)SomeMechanism.Get("car1");
Run Code Online (Sandbox Code Playgroud)

car1和car2是领域

所以我想用反射得到一些对象,而不是键入:/我怎样才能在c#中做到?

.net c# reflection system.reflection c#-4.0

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

递归复制文件

我在C#中找到了一个用于执行递归文件复制的小片段,但我有点难过.我基本上需要将目录结构复制到另一个位置,沿着这条线......

来源:C:\ data\servers\mc

目标:E:\ mc

我现在的复制功能代码是......

    //Now Create all of the directories
    foreach (string dirPath in Directory.GetDirectories(baseDir, "*", SearchOption.AllDirectories))
    {
        Directory.CreateDirectory(dirPath.Replace(baseDir, targetDir));
    }


    // Copy each file into it’s new directory.
    foreach (string file in Directory.GetFiles(baseDir, "*.*", SearchOption.AllDirectories))
    {
        Console.WriteLine(@"Copying {0}\{1}", targetDir, Path.GetFileName(file));
        if (!CopyFile(file, Path.Combine(targetDir, Path.GetFileName(file)), false))
        {
            int err = Marshal.GetLastWin32Error();
            Console.WriteLine("[ERROR] CopyFile Failed on {0} with code {1}", file, err);
        }
    }
Run Code Online (Sandbox Code Playgroud)

问题是,在第二个范围内,我要么:

  1. 使用Path.GetFileName(file)以获得实际文件名不带路径,但我失去了目录"MC"的目录结构
  2. 使用没有Path.Combine的"文件".

无论哪种方式,我都要做一些讨厌的字符串工作.有没有一种很好的方法在C#中执行此操作(我对.NET API缺乏了解导致我过度复杂化的事情)

.net c# file-copying

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

Groovy CliBuilder,如何识别错误的参数?

我正在学习Groovy CliBuilder,我发现它很棒,除了,我不知道如何识别错误的论点.请考虑以下示例代码:

def cli = new CliBuilder()
cli.s args: 1, longOpt: 'sdkdir', 'sdkdir usage info'
cli.h args: 0, longOpt: 'help', 'print usage information'
def opt = cli.parse(args)
if (!opt) {
    //how to be in this case? seems I can never reach here
    println "something went wrong, but I don't know what"
} else if (opt.h) {
    cli.usage()
} else (!opt.s) {
    println "missing required option -s, try with --help for more information"
} else {
    //do something
}
Run Code Online (Sandbox Code Playgroud)

例如,如果我用我的脚本调用-p …

groovy command-line-interface command-line-arguments command-line-parsing

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

从文章中提取相关关键字/标签的java工具

我正在寻找基于java的工具来从给定的文章中提取相关标签。我需要一个工具,基本上可以尝试识别给定文章相关的主要主题和术语。谢谢你的帮助。

java search-engine metadata data-mining

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