cURL和SSL,connect()超时(cURL and SSL, connect() time out)
我正在使用cURL连接到SSL服务器来重新发送和发送XML文件,但我一直在努力
“连接()超时!”
当我尝试连接到服务器时。
我是cURL的新手,所以我不知道服务器配置,某些证书或什么是错误的。
我正在尝试运行的代码(由SSL服务器的所有者提供给我):
function post($url, $post) { $ch = curl_init(); if($ch) { curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_TIMEOUT,60); curl_setopt($ch, CURLOPT_VERBOSE,0); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); $result = curl_exec($ch); echo '<pre>', curl_error($ch); curl_close($ch); if(!empty($result)) return $result; } }
cURL版本信息:
[version_number] => 463362 [age] => 3 [features] => 1597 [ssl_version_number] => 0 [version] => 7.18.2 [host] => i486-pc-linux-gnu [ssl_version] => OpenSSL/0.9.8g [libz_version] => 1.2.3.3 [protocols] => Array ( [0] => tftp [1] => ftp [2] => telnet [3] => dict [4] => ldap [5] => ldaps [6] => http [7] => file [8] => https [9] => ftps [10] => scp [11] => sftp )
I'm using cURL to connect to a SSL server to recive and send XML-files but I keep getting
"connect() time out!"
when I try to connect to the server.
I'm kind of new to cURL so I don't know if it's something wrong with the servers configuration, some certificate, or what.
The code i'm trying to run (given to me by the owner of the SSL server):
function post($url, $post) { $ch = curl_init(); if($ch) { curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_TIMEOUT,60); curl_setopt($ch, CURLOPT_VERBOSE,0); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); $result = curl_exec($ch); echo '<pre>', curl_error($ch); curl_close($ch); if(!empty($result)) return $result; } }
cURL version information:
[version_number] => 463362 [age] => 3 [features] => 1597 [ssl_version_number] => 0 [version] => 7.18.2 [host] => i486-pc-linux-gnu [ssl_version] => OpenSSL/0.9.8g [libz_version] => 1.2.3.3 [protocols] => Array ( [0] => tftp [1] => ftp [2] => telnet [3] => dict [4] => ldap [5] => ldaps [6] => http [7] => file [8] => https [9] => ftps [10] => scp [11] => sftp )
原文:https://stackoverflow.com/questions/9349350
最满意答案
我认为月份的内部编号从0开始,而不是1.因此,您可能需要在某处添加+1。
编辑:在您显示更多代码之后:所需的更改是String month = form_helper.round(gcal.get(GregorianCalendar.MONTH) + 1);
I think internal numbering of months starts with 0, not 1. So, you probably need to somewhere add +1.
Edit: after you showed some more code: The needed change isString month = form_helper.round(gcal.get(GregorianCalendar.MONTH) + 1);
相关问答
更多-
恭喜,您已经用JDBC:Date类处理命中了我最喜爱的宠物小便。 基本上,数据库通常至少支持三种日期,时间和时间戳的日期时间字段。 它们中的每一个在JDBC中都有一个相应的类,并且每个都扩展了java.util.Date 。 这三个中的每一个的快速语义如下: java.sql.Date对应于SQL DATE,这意味着它存储年,月和日,而小时,分钟,秒和毫秒都被忽略。 另外sql.Date并不绑定到时区。 java.sql.Time对应于SQL TIME,显而易见的只包含有关小时,分钟,秒和毫秒的信息 。 j ...
-
Java Date问题(Java Date issue)[2023-09-13]
我认为月份的内部编号从0开始,而不是1.因此,您可能需要在某处添加+1。 编辑:在您显示更多代码之后:所需的更改是 String month = form_helper.round(gcal.get(GregorianCalendar.MONTH) + 1); I think internal numbering of months starts with 0, not 1. So, you probably need to somewhere add +1. Edit: after you showed ... -
Java新的Date()打印(Java new Date() in print)[2022-09-10]
当您打印某些内容时,将调用该对象的toString()方法。 因此,由个别类提供有意义的实现。 供参考,请参阅 Java教程:Object类 这是Date的toString()方法: public String toString() { // "EEE MMM dd HH:mm:ss zzz yyyy"; BaseCalendar.Date date = normalize(); StringBuilder sb = new StringBuilder(28); int index = date.getDa ... -
您的教授提供了一个名为Date的自定义类,它与java.util.Date完全无关。 所以你根本无法施放。 如果您确实需要在这两种不同的Date类型之间进行转换,那么您必须编写转换器。 最好的办法是从你的代码java.util.Date移除java.util.Date的输入,并且只使用为这个赋值提供的Date类型。 排序这些日期是可能的,你开始的方式。 您必须重新实现DateComparator以使用自定义Date类而不是java.util.Date 。 You're prof has provided a ...
-
Java日期格式问题(Java Date Format Issue)[2022-12-25]
您在数字中使用的是int literals而不是long 。 默认情况下,整数文字是int除非您在结尾处指定L为long 。 尝试这个: Date d1 = new Date(1000*1373604190L); (注意你文字1373604190末尾的L) You are using int literals instead of long in your numbers. By default a integral literal is int unless you specify that is lo ... -
来自java的日期格式问题(The date format issue from java)[2023-10-05]
如果您不使用java 7,请删除:在时区部分内 并使用这个: SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ"); 请参阅Java 6中的SimpleDateFormat的 javadoc 和 如果您使用的是Java 7,请直接使用: SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssX"); 请参阅Java 7中的SimpleDateFo ... -
Java日期解析问题(Java date parsing issue)[2022-03-31]
问题在于“May”的解释,因为您没有指定任何区域设置。 尝试: SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd MMM yyyy HH:mm:ss", new Locale("en_US")); The problem is the interpretation of "May" because you did not specify any locale. Try : SimpleDateFormat simpleDateForm ... -
Java日期格式问题(Java Date formatting issue)[2022-11-19]
您可以将数据格式对象的timeZone设置为GMT: df.setTimeZone(TimeZone.getTimeZone("GMT")); 你应该得到你想要的东西。 时间戳表示“自1970年1月1日,格林威治标准时间00:00:00以来的毫秒数”,对于您当前的时区,结果将有所不同。 You can set the timeZone of data format object to GMT: df.setTimeZone(TimeZone.getTimeZone("GMT")); and you sh ... -
从Eduardo Macarron(myBatis开发人员)获得解决方案 我知道了。 这是一个有趣的发现。 看看你发布的表达方式。 {reportRunDate mode = IN,jdbcType = DATE}, 没有逗号分隔属性名称和模式! 发生的事情是3.0和3.1承认使用空格作为分隔符,虽然这是未记录的,未经测试,至少在我的情况下未知:) 3.2解析代码得到了改进,现在它支持一个定义良好的语法: 内联参数表达式解析器。 支持的语法(简化): inline-parameter =(propertyN ...
-
逗号分隔值(CSV)以纯文本格式存储表格数据。 要向Excel提供如何格式化特定列的说明,您需要使用Excel格式。 为了实现它,您可以使用Java库以Excel格式导出数据。 这种库的一个例子是Apache POI - 用于Microsoft文档的Java API( http://poi.apache.org/ )。 此外,为了更好地使用Excel中的CSV文件,请使用从文本导入功能。 这是一个向导,您可以指定导入设置,包括列格式,字段宽度等。 我希望它有所帮助。 Comma-separated valu ...