導航:首頁 > IDC知識 > 伺服器客戶端代碼

伺服器客戶端代碼

發布時間:2020-11-19 15:31:25

1、Java聊天室伺服器端和客戶端的完整代碼

下面有個IP你把它設成對方的ip地址就可以了,在他的電腦上也把ip設為你自己的就可以實現QQ聊天了,就是界面有點丑!!希望能幫助到你!你可以查考下!! import java.awt.BorderLayout; import java.awt.Color; import java.awt.FlowLayout; import java.awt.GridLayout; import java.awt.TextArea; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.net.SocketException; import java.net.UnknownHostException; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollBar; import javax.swing.JScrollPane; public class UDPChat extends JFrame implements ActionListener{ public TextArea textmessage = null ; public TextArea sendtext = null ; public DatagramSocket socket; public JScrollBar vsBar; public UDPChat() { super (); setTitle("小型聊天程序"); setBounds(200,150,350,280); JPanel panel1 = new JPanel(); JPanel panel2 = new JPanel(); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBackground(Color.BLACK); textmessage = new TextArea(); sendtext = new TextArea(); textmessage.setEditable( false ); textmessage.setColumns(35); textmessage.setRows(10); // textmessage.setLineWrap(true); sendtext.setColumns(35); sendtext.setRows(2); JButton buttonOK = new JButton("確定"); JButton buttonclean = new JButton("清空"); JButton buttonquit = new JButton("退出"); GridLayout grid = new GridLayout(3,1); grid.setHgap(10); grid.setVgap(10); panel1.setLayout(grid); // panel1.setLayout(new GridLayout(3,1)); panel1.add(buttonOK); panel1.add(buttonclean); panel1.add(buttonquit); panel2.setLayout( new FlowLayout()); panel2.add(textmessage); panel2.add(sendtext); getContentPane().add(panel1,BorderLayout.EAST); getContentPane().add(panel2,BorderLayout.CENTER); setVisible( true ); buttonOK.addActionListener( this ); buttonclean.addActionListener( this ); buttonquit.addActionListener( this ); server(); } public void server() { try { socket = new DatagramSocket(9527); byte [] buf = new byte [1024]; final DatagramPacket dp1 = new DatagramPacket(buf,buf.length); Runnable run = new Runnable(){ public void run() { while ( true ) { try { Thread.sleep(100); socket.receive(dp1); int len = dp1.getLength(); String message = new String(dp1.getData(),0,len); String ip = dp1.getAddress().getHostAddress(); System.out.println(ip); if (!InetAddress.getLocalHost().getHostAddress().equals(ip)) textmessage.append(ip+"\n"+message+'\n'); } catch (IOException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } } } }; new Thread(run).start(); } catch (SocketException e) { e.printStackTrace(); } } public static void main(String[] args) { UDPChat udp = new UDPChat(); } @Override public void actionPerformed(ActionEvent e) { // JButton button = (JButton) e.getSource(); String buttonname =e.getActionCommand(); if (buttonname.equals("退出")) System.exit(0); if (buttonname.equals("清空")) { textmessage.setText(""); } if (buttonname.equals("確定")) { String iP = "192.168.8.15"; try { InetAddress address =InetAddress.getByName(iP); byte []data = sendtext.getText().getBytes(); DatagramPacket dp = new DatagramPacket(data,data.length,address,9527); String myip = InetAddress.getLocalHost().getHostAddress(); textmessage.append(myip +" \n"+sendtext.getText() +"\n"); socket.send(dp); sendtext.setText(""); } catch (UnknownHostException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } } }

2、用PHP寫出顯示客戶端IP與伺服器IP的代碼

伺服器IP用:
echo(gethostbyname($SERVER_NAME));
客戶端IP用下面函數:
function iptype1 () {
if (getenv("HTTP_CLIENT_IP")) {
return
getenv("HTTP_CLIENT_IP");
}
else {
return "none";
}
}

function iptype2 () {
if (getenv("HTTP_X_FORWARDED_FOR")) {

return getenv("HTTP_X_FORWARDED_FOR");
}
else {
return "none";

}
}
function iptype3 () {
if (getenv("REMOTE_ADDR")) {

return getenv("REMOTE_ADDR");
}
else {
return "none";
}

}
function ip() {
$ip1 = iptype1();
$ip2 = iptype2();
$ip3
= iptype3();
if (isset($ip1) && $ip1 != "none" && $ip1 !=
"unknown") {
return $ip1;
}
elseif (isset($ip2) && $ip2
!= "none" && $ip2 != "unknown") {
return $ip2;
}
elseif
(isset($ip3) && $ip3 != "none" && $ip3 != "unknown") {

return $ip3;
}
else {
return "none";
}
}
使用時,直接調用ip();

3、Java,使用 Socket進行客戶端和伺服器通信,求代碼

端和伺服器通信,具體要求如

4、代碼的客戶端解析和伺服器解析分別表示什麼意思?

我知道,請來隔壁教室詢問!·~~!~

5、伺服器端代碼和客戶端代碼有什麼區別

簡單的說,服務端是後台,客戶端是前台。
服務端是使用者看不見的,客戶端是使用者能看見的。

6、伺服器端代碼如何調用客戶端JS

這個只能用ajax技術解決啦。
我建議你用jquery,寫個ashx做簡單的數據驗證,當你在那一頁點提交後,先調用一個js函數,調用jquery.post到ashx程序進行驗證,把結果取回來再輸出confirm。整個過程頁面不會刷新,用戶體驗非常好。
jquery非常容易學,只要你肯學一兩天時間,你就會學會使用這個強大的工具,以後那些難題都難不了你。

7、C# 客戶端與伺服器 控制台代碼

下面這個大牛的博客有詳細的講解,你可以去看看,研究一下,比直接看代碼會有收獲。有兩篇文章,下面這個是part1,還一個part2在博客底部下一篇中能看到。

8、簡述ASP.NET中伺服器端代碼和客戶端代碼的區別

服務端碼在伺服器上執行,客戶端代碼在客戶端執行。你不能用客戶端代碼去控制伺服器內,只能通過客戶端代碼容將數據發送到伺服器,由伺服器代碼執行。一個客戶端控制項加上上runat=「server」以後就變成了服務端控制項,就可以在aspx.cs里控制這個控制項了。

9、網路編程中伺服器端代碼和客戶端代碼怎麼調試?

方法一,在本機安裝虛擬機,模擬伺服器和客戶機工作,虛擬機軟體,vmware,自己網上下載,很多
方法二,上傳到遠程空間進行真實環境調試

10、java代碼TCP/IP網路通信伺服器客戶端,實現雙方信息交互。

package com.weixin.test;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;

import org.junit.Test;

public class ScoketTest {

@Test
public void client() throws Exception{

InetAddress i=InetAddress.getByName("127.0.0.1");


Socket s=new Socket(i, 9000);

OutputStream outputStream = s.getOutputStream();

outputStream.write("服務端你好,我是客戶端哦!".getBytes());

s.shutdownOutput();
InputStream inputStream=s.getInputStream();

int length=0;

byte[] bytes=new byte[1024];

while ((length=inputStream.read(bytes))!=-1) {
System.err.println(new String(bytes,0,length));
}

inputStream.close();
outputStream.close();
s.close();
}


@Test
public void server() throws Exception{

ServerSocket serverSocket=new ServerSocket(9000);

Socket socket = serverSocket.accept();

InputStream inputStream = socket.getInputStream();

OutputStream outputStream = socket.getOutputStream();

int length=0;

byte[] bytes=new byte[1024];

while ((length=inputStream.read(bytes))!=-1) {
System.err.println(new String(bytes, 0,length));
}

outputStream.write("客戶端你好,本王已收到!".getBytes());

outputStream.close();
inputStream.close();
socket.close();
serverSocket.close();




}

}

與伺服器客戶端代碼相關的知識