尽管 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/) …
我试图以字符串形式获取套接字连接的IP.
我正在使用一个框架,它返回SocketAddress收到的消息.我怎样才能把它变成InetSocketAddress或InetAddress?
我想在日期中添加几天以获得Java的新日期.如何使用Calendar该类实现它.
Calendar dom = new GregorianCalendar(d, m, y);
Run Code Online (Sandbox Code Playgroud)
是我的制造日期的实例,我想达到到期日期,在当前日期添加大约100天并将其存储在变量中doe但不能这样做.
我有这样的数据结构
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)
或者这是不可能的,我必须在我的业务逻辑中创建一个特殊的方法?
非常感谢.
我知道我可以在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?
我开始使用一个相当基本的服务器/客户端应用程序(逻辑上明智),但我对我应该用于什么需求感到困惑.看起来有几个选项,但基本上我将拥有一个主服务器和X个客户端应用程序(每个专用机器一个).这个设置的主要目的是让我基本上可以做到以下几点......
- 通过ASP前端向服务器(控制台应用程序)发出命令,以在其中一个远程客户端上安装软件. - 服务器告诉客户端将zip包(从各种FTP站点)下载到位置并将其提取到特定路径.
我不是肯定的,但看起来C#有Sockets,然后是某种WebClient类型的交易.我假设套接字将是最好的路由,并使用异步(每个远程客户端在其自己的线程中连接,与其他人单独处理服务器).
有关这方面的任何信息都会很棒!
我正在寻找c#这样的机制:
Car car1;
Car car2;
Car car = (Car)SomeMechanism.Get("car1");
Run Code Online (Sandbox Code Playgroud)
car1和car2是领域
所以我想用反射得到一些对象,而不是键入:/我怎样才能在c#中做到?
我在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)
问题是,在第二个范围内,我要么:
Path.GetFileName(file)以获得实际文件名不带路径,但我失去了目录"MC"的目录结构或无论哪种方式,我都要做一些讨厌的字符串工作.有没有一种很好的方法在C#中执行此操作(我对.NET API缺乏了解导致我过度复杂化的事情)
我正在学习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
我正在寻找基于java的工具来从给定的文章中提取相关标签。我需要一个工具,基本上可以尝试识别给定文章相关的主要主题和术语。谢谢你的帮助。
.net ×4
c# ×4
java ×3
networking ×3
.net-3.5 ×1
c#-4.0 ×1
class ×1
client ×1
data-mining ×1
date ×1
file-copying ×1
groovy ×1
http ×1
inetaddress ×1
lambda ×1
linq ×1
listen ×1
metadata ×1
node.js ×1
paypal ×1
port ×1
reflection ×1
ruby ×1
sockets ×1
tcp ×1