我正在运行带有一些虚拟主机的Tomcat服务器,我需要将一些数据从另一台服务器上的另一个servlet发送到此服务器上的servlet.因为我要POST的服务器使用虚拟主机只是通过它的IP地址引用这个主机会导致问题(它不知道我正在尝试与哪个虚拟主机通信).
以下是我运行HTTP 1.0 POST到"sub.example.com"的代码,但在此示例中,"example.com"只知道将请求路由到右子域(如果将其配置为默认值).这是因为要求Socket传递InetAddress而不是主机名.
String host = "sub.example.com";
int port = 80;
String path = "/Servlet";
StringBuilder data = new StringBuilder();
data.append(URLEncoder.encode("NameA", "UTF-8")).append('=').append(URLEncoder.encode("ValueA", "UTF-8"));
data.append('&').append(URLEncoder.encode("NameB", "UTF-8")).append('=').append(URLEncoder.encode("NameB", "UTF-8"));
InetAddress addr = InetAddress.getByName(host);
Socket socket = new Socket(addr, port);
BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(), "UTF8"));
wr.write("POST "+path+" HTTP/1.0\r\n");
wr.write("Content-Length: "+data.length()+"\r\n");
wr.write("Content-Type: application/x-www-form-urlencoded\r\n");
wr.write("\r\n");
// Send data
wr.write(data.toString());
wr.flush();
wr.close();
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
使用VB6 而不使用任何其他引用(如Regex),如何转换字符串以使字符串中的所有空格都缩减为单个空格?
例如.
" A B C D E"
Run Code Online (Sandbox Code Playgroud)
将被转换为
"A B C D E"
Run Code Online (Sandbox Code Playgroud) 我编写了一个基本实用程序,该实用程序在一个线程中侦听消息,将消息添加到FIFO队列,然后在另一个线程中处理它们。每条消息的处理时间都是固定的(它正在等待指示灯停止闪烁),但是消息可以随机到达(patterns代码中是正则表达式的字典,用于匹配传入的消息,如果找到匹配项,则会将其添加到队列以及闪烁的颜色模式)。
blink_queue = Queue()
def receive(data) :
message = data['text']
for pattern in patterns:
if re.match(pattern, message):
blink_queue.put(patterns[pattern])
break
return True
def blinker(q) :
while True:
args = q.get().split()
subprocess.Popen(
[blink_app] + args,
startupinfo=startupinfo,
stderr=subprocess.PIPE,
stdout=subprocess.PIPE)
time.sleep(blink_wait)
q.task_done()
def subscribe():
print("Listening for messages on '%s' channel..." % channel)
pubnub.subscribe({
'channel' : channel,
'callback' : receive
})
blink_worker = Thread(target=blinker, args=(blink_queue,))
blink_worker.daemon=True
blink_worker.start()
sub_thread = Thread(target=subscribe)
sub_thread.daemon=True
sub_thread.start()
sub_thread.join()
Run Code Online (Sandbox Code Playgroud)
如何在Python中实现FIFO队列,如果队列变大,它将自动修剪最旧的(第一个)队列。我要创建另一个监视线程,还是在subscribe线程上检查大小?我真的是Python新手,所以如果有一个完全合乎逻辑的数据类型,请随时叫我一个菜鸟,并按正确的方向发送给我。
有一个字符串"Saya"我想删除第4个字符所以它将是"Say"
我已经这样做了
String word = "Saya";
char c = word.charAt(3);
String delete = Character.toString(c);
String newWord = word.replace(delete,"");
System.out.println(newWord);
Run Code Online (Sandbox Code Playgroud)
但结果是"Sy".它删除与第4个相同的所有字符
有人能帮帮我吗?
假设我有这个简单的类:
public class Car {
public static final int TYPE_SUV = 1;
public static final int TYPE_TRUCK = 2;
public String name;
public int carType;
}
Run Code Online (Sandbox Code Playgroud)
现在,如果我有这些的集合,我知道我正在为集合中的每个元素分配一个String和一个int,但我是否也int多次存储静态?这个设计的示例类代表了我在几年前写的那种Java之前,我才知道像这样的幻想数字更好地服务enum于一个单独的类中定义,但我总是想知道这个代码的副作用是什么.
我想在每个<p>Tag 之后插入一个div,当然用id定义.
使用insertAfter,jQuery非常简单:
$('#id').insertAfter('p'); but how about using css?
Run Code Online (Sandbox Code Playgroud)
在选择器可以帮助之后我看不到css .