`
daoger
  • 浏览: 529589 次
  • 性别: Icon_minigender_1
  • 来自: 山东济南
社区版块
存档分类
最新评论

跨域访问解决办法之java网络编程

阅读更多

颓废了很长时间,还是心态问题!


项目中有不少地方需要跨域访问接口,读取接口的返回值进行操作。其中一个就是给用户手机发送短信,考虑用ajax实现,
开始时在IE下测试都正常,可是在firefox下怎么都不行,查了查资料才知道firefox的安全机制比 IE严格,不允许跨域访问。
在页面中嵌入iframe标签来尝试加载跨域页面的内容也是一样不行,firefox下iframe中的内容可以显示,但是无法用js获得iframe中内容,
自然也就无法用代码判断跨域操作的返回结果。有大牛说可以直接用ajax实现访问跨域地址,这里不做讨论,日后再议。
经心境悠扬同学点拨,java网络编程就可以解决问题。可以在后端处理中访问跨域的链接地址,获取返回结果。这里是在心境同学例子基础
上稍加修改后的代码,贴出来做个备份。

public class ThirdInterfaceImp implements ThirdInterface
{
    Log log = LogFactory.getLog(getClass());
    static String smsurl = "http://www.xxx.com/xxx.jsp";

    public String sendShortMessage(String smsSrc, String mobileNo)
    {
        String line="";
        StringBuffer sb = new StringBuffer();
        try
        {
            URL u = new URL(smsurl);
            URLConnection uc = u.openConnection();
            uc.setDoOutput(true);
            //
            PrintWriter out = new PrintWriter(uc.getOutputStream());
            out.print("smsSrc=" + smsSrc + "&mobileNo=" + mobileNo);
            out.close();
            
            BufferedReader in = new BufferedReader(new InputStreamReader(uc.getInputStream()));
            
            while ((line = in.readLine()) != null)
                sb.append(line + "\n");
            in.close();
        } catch (Exception e)
        {
            log.error(e);
        }
        return new String(sb);
    }
}
 

jquery好像可以直接实现跨域访问的操作,但这个没有证实。

2
3
分享到:
评论
4 楼 leaphong 2012-03-21  
venliong 写道
很明显,你还不怎么理解什么是跨域安全限制

还有,那个“有大牛说可以直接用ajax实现访问跨域地址”的所谓大牛,不懂装懂

兄弟你觉得他不对你可以把解决问题的方法说出来,老是在这里说风凉话,那你不要说了,好不,
3 楼 tntxia 2010-03-22  
搭个apach两边分发哈
2 楼 daoger 2008-10-12  
venliong 写道

很明显,你还不怎么理解什么是跨域安全限制还有,那个“有大牛说可以直接用ajax实现访问跨域地址”的所谓大牛,不懂装懂

还请指教!
1 楼 venliong 2008-10-12  
很明显,你还不怎么理解什么是跨域安全限制

还有,那个“有大牛说可以直接用ajax实现访问跨域地址”的所谓大牛,不懂装懂

相关推荐

    解决JS跨域访问IFrame的解决方案

    "解决JS跨域访问IFrame的解决方案"这一主题关注的就是如何克服这个限制,使得在JSP页面中嵌入的跨域IFrame能够正常通信。下面我们将详细探讨这个问题以及可能的解决方案。 首先,理解同源策略是关键。同源策略是...

    Android跨域请求获取Java后端数据,登录界面例子

    在Android应用开发中,与Java后端进行数据交互是常见的需求。这个例子主要涉及的是如何在Android客户端通过跨域请求获取Java...通过这个例子,你可以学习到Android网络编程的基础,以及如何在实际应用中解决跨域问题。

    java版 解决跨域问题CORS ajax+jsonp例子源代码.zip

    标签“java ajax jsonp”表明这个压缩包内容与Java编程语言、AJAX以及JSONP这三种技术有关。 压缩包内的文件名称列表: 1. "jsonp能跨域即在服务器A上访问服务器B.txt" - 这个文件可能包含了关于JSONP如何实现跨域...

    xmlhttp跨域解决方案

    然而,由于浏览器的同源策略限制,XMLHttpRequest在发送请求时,通常只能请求与当前页面同一源的资源,这在进行跨域请求时会遇到“拒绝访问”的错误。为了解决这一问题,我们可以采用多种跨域解决方案,其中一种是...

    开源android浏览器,访问跨域网页

    通过研究源代码,开发者可以了解到如何利用WebView组件实现跨域访问,如何使用Android SDK构建用户界面和管理应用的生命周期,以及如何优化浏览器性能和用户体验。同时,接触更多的开源项目可以拓宽视野,提高问题...

    前端后端+跨域请求+java/js

    本文将深入探讨前端与后端之间的通信、跨域请求的概念、原因以及解决策略,并通过Java和JavaScript(JS)的示例来讲解如何处理这些问题。 首先,前端通常指的是用户在浏览器中直接交互的部分,包括HTML、CSS和...

    网络编程-web案例资料包

    6. **跨域问题**:了解什么是跨域限制,以及如何配置CORS(Cross-Origin Resource Sharing)允许跨域访问。 7. **调试与测试**:学习使用浏览器的开发者工具来调试服务器端程序,以及如何编写简单的测试用例来验证...

    ajax跨域访问WCP搜索,返回JSON数据

    标题中的“ajax跨域访问WCP搜索,返回JSON数据”涉及到的是Web开发中关于AJAX、跨域资源共享(CORS)以及JSON数据格式的应用。在Web应用中,AJAX(Asynchronous JavaScript and XML)是一种在无需刷新整个页面的情况...

    java抓包转发详细资料

    总结,Java抓包转发技术是Java网络编程中的重要部分,它涉及到网络数据包的捕获、解析和定向传输,能够帮助开发者深入了解网络通信,解决各种网络问题,同时在测试和安全领域也有着广泛的应用。通过学习和实践,...

    iframe跨域与session失效问题的解决办法

    //解决IE7\8跨域访问问题 response.setHeader("P3P","CP=\"IDC DSP COR ADM DEV TAI PSA PSD IVAI IVI CONI HIS OUR DEL IND INT\""); %> ``` 这段代码的作用是在响应头中添加一个P3P声明,告诉IE浏览器这个网站...

    解决springboot实现跨域session共享问题

    综上所述,解决Spring Boot中的跨域session共享问题和防止SQL注入,需要结合CORS配置、分布式session存储和安全编程实践。通过合理的配置和编程习惯,我们可以构建更加健壮、安全的Web服务。提供的压缩包文件`...

    Java和Flex交互常见问题及解决

    ### Java与Flex交互中的常见问题及其解决方案 在Java与Flex技术进行交互的过程中,经常会遇到一些典型的问题,这些问题可能涉及到安全性、数据传输格式以及字符编码等方面。本文将详细探讨以下几个方面: 1. **...

    java调用百度翻译接口简单实例

    在Java编程中,调用外部服务接口是一种常见的需求,例如集成第三方API来实现特定功能。本实例关注的是如何使用纯Java代码调用百度翻译API,无需依赖任何第三方库。这通常涉及网络请求、JSON解析以及对API规定的参数...

    JAVA调用外接设备(制卡机)---JQuery跨域

    本主题聚焦于如何在JAVA环境下通过JQuery处理跨域问题来调用这些外接设备,尤其是解决AJAX跨域问题。以下是相关知识点的详细说明: 1. **JAVA调用外接设备**: - JAVA作为后端编程语言,可以通过JNI(Java Native ...

    java HTTP代理源码

    在Java编程语言中,HTTP代理是一种中间服务器,它充当客户端(如Web浏览器)与目标服务器之间的中介。HTTP代理的主要作用包括缓存、访问控制、数据过滤等,有时也被用于跨域请求或者隐私保护。本项目提供了两种不同...

    tomcat服务器的跨域jar

    “java”是指Java编程语言,它是编写Web应用的后端代码的基础。“运维”则涉及服务器的部署、监控、更新等日常管理工作。 至于“jar”,在Java世界里,JAR(Java Archive)文件是Java类库的打包格式,包含编译后的...

    Java程序调试与错误收集--代码引起的报错

    本文将根据提供的部分文档内容,详细介绍在Java编程中常见的错误类型及其解决方案。 #### 一、编码问题 **描述:** 在处理中文或特殊字符时,如果页面或平台没有设置正确的编码方式(如未设置JSP页面的pageEncoding...

    flash 843安全策略文件 java版本

    在Java环境下,可以使用MINA(Minimal Asynchronous Socket API)框架来创建这样的服务器,它是一个强大的网络编程框架,支持TCP、UDP等多种协议,并提供了异步事件驱动的网络应用编程接口。 描述中提到,“使用...

    AJAX的跨域访问-两种有效的解决方法介绍

    这个字段的设置需要在服务器响应中添加,通常是通过后端编程语言实现的,比如Java中的Servlet。 然而,这种方法虽然简单有效,但可能会带来安全风险,因为如果设置为“*”,则任何域都可以访问该资源,这可能导致...

    反射高手巧妙实现强行私有成员源代码,java跨域范围

    在Java编程语言中,反射(Reflection)是一种强大的工具,它允许程序在运行时检查和操作类、接口、字段以及方法等对象。通过反射,开发者可以访问通常被限制的私有成员,包括私有变量和私有方法,这在特定场景下如...

Global site tag (gtag.js) - Google Analytics