>Java >java지도 시간 >URLConnection 호출 인터페이스 인스턴스 공유

URLConnection 호출 인터페이스 인스턴스 공유

零下一度
零下一度원래의
2017-07-18 09:54:281261검색

이 글에서는 주로 브라우저 요청 인스턴스를 시뮬레이션하기 위해 HttpURLConnection 클래스를 호출하는 Java의 배경을 소개합니다. 이 인스턴스는 인터페이스 호출에 사용될 수 있으며 필요한 친구가 이를 참조할 수 있습니다.

일반적으로 프로젝트 개발에 사용됩니다. 외부 인터페이스에 대한 호출이 불가피합니다. 이 기사에서는 Java의 예를 설명합니다. 브라우저 요청을 시뮬레이션하기 위해 백그라운드에서 HttpURLConnection 클래스를 호출하는 방법은 인터페이스 호출에 사용될 수 있으며 참조용으로 모든 사람과 공유됩니다: .net 시스템, wcf로 개발된 인터페이스. 상대방은 post 메소드에서 인터페이스 URL 주소와 이를 호출하기 위한 지침을 제공하며, 매개변수를 전달할 필요가 없으며 json 배열(json 배열 형식의 데이터)이 직접 반환됩니다. 프레임워크 호출, ajax 호출, urlConnection 등이 있습니다. 프로젝트 요구에 따라 상대방의 .net 시스템의 인터페이스를 원격으로 호출해야 하기 때문에 인터페이스는 wcf를 사용하여 개발됩니다. 그러면 우리 시스템은 java이고 jdk는 1.4입니다. 따라서 일부 주류 프레임워크 호출은 더 이상 사용할 수 없습니다. 일반적으로 jdk1은 6 이상만 허용됩니다. 그러고보니 jdk1.4에도 축을 적용할 수 있는데, 클라이언트측 코드생성 방식을 사용하면 제가 생성한 클래스가 왜 없어졌는지 모르겠어서 과감히 포기했습니다. -도메인 호출 인터페이스(즉, 두 당사자의 시스템이 동일한 서버에 있지 않음), 액세스하려면 게시 방법이 필요하므로 ajax는 도메인 간을 지원하지 않기 때문에 ajax 방법이 작동하지 않습니다. , jsonp는 도메인 간 사용이 가능하지만 get 메소드에서 액세스됩니다. 2~3일 동안 고민하고 노력한 끝에 Tieba의 마스터에게 도움을 요청했습니다. 마스터는 나에게 URLConnection 호출 인터페이스인 httpurlconnection을 사용하여 액세스하라고 요청했습니다. 그 후 Chuanzhi Podcast 웹 서비스의 비디오 노트를 꺼내보니 URLConnection 호출 인터페이스 사용에 대한 언급도 있어서 시도해 보기로 했습니다. 효과가 있었어요...너무 강력해요. . . (이 방법은 다양한 인터페이스 호출에도 적용될 수 있을 것 같고, 웹 서비스 호출도 가능할 것 같습니다. 누구나 시도해 볼 수 있을 것 같습니다. 문제가 발생하더라도 두려워하지 마세요. 하하하...)

   1. :

  URLConnection 호출 인터페이스를 위해 관련 jar 패키지를 가져올 필요가 없는 것 같습니다. 이는 프로젝트에 따라 다릅니다. 여기에 반환되는 것은 json 배열의 문자열이므로 여기서는 json 관련 jar를 사용하여 이를 얻어야 합니다. json jar 패키지를 가져오기만 하면 됩니다.

코드: 먼저 기본 Java 프로그램을 작성하여 연결하고 테스트한 다음 호출을 위해 특정 프로젝트에 넣을 수 있습니다.

  URL url =  URL("http://10.10.10.83/GetProjectNameService/GetProjectNameService.svc/getProjectName"URLConnection conn =HttpURLConnection httpConn =System.setProperty("sun.net.client.defaultConnectTimeout", "30000""sun.net.client.defaultReadTimeout", "30000"httpConn.setDoInput(httpConn.setUseCaches(httpConn.setRequestMethod("POST"OutputStream out =ObjectOutputStream objOut =  String(""InputStream in =StringBuffer sb = = = ""(httpConn.getResponseCode() == 200BufferedReader reader =  BufferedReader( InputStreamReader(in,"UTF-8"= ((line = reader.readLine()) != ="返回结果:"+jarr = ( i=0;i<jarr.length();i++

위 내용은 URLConnection 호출 인터페이스 인스턴스 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.