热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用Xutils编写网络传输服务器拒绝访问求指点!!

小弟最近初学Android编程,目前在做一个项目需要用到网络连接技术,由于我其他部分代码也用到了Xutils,所以网络连接也想用这个来写可是今天尝试访问服务器时候出错,自己想不明白错在哪儿啦求各
小弟最近初学Android编程,目前在做一个项目需要用到网络连接技术,由于我其他部分代码也用到了Xutils,所以网络连接也想用这个来写
可是今天尝试访问服务器时候出错,自己想不明白错在哪儿啦 求各位大神指教!!!
POSTmethod.java

package com.example.roderick.networkstructure.NetworkUtils.BasicMethod;

import com.lidroid.xutils.HttpUtils;
import com.lidroid.xutils.http.RequestParams;
import com.lidroid.xutils.http.callback.RequestCallBack;
import com.lidroid.xutils.http.client.HttpRequest;

/**
 * Created by dellpc on 2016/8/10.
 */
public class POSTmethod {
    protected void doPost(String url, RequestParams params, final RequestCallBack reqCallBack){
        HttpUtils http = new HttpUtils();
        http.configCurrentHttpCacheExpiry(1000 * 10);
        http.send(HttpRequest.HttpMethod.POST, url, params, reqCallBack);
    }
    final protected String urlBasic = "http://10.25.32.2/hcservice";
}


netDocSignUp.java

package com.example.roderick.networkstructure.NetworkUtils.urlUtils;

import com.example.roderick.networkstructure.NetworkUtils.BasicMethod.POSTmethod;
import com.lidroid.xutils.exception.HttpException;
import com.lidroid.xutils.http.RequestParams;
import com.lidroid.xutils.http.ResponseInfo;
import com.lidroid.xutils.http.callback.RequestCallBack;

import org.apache.http.entity.StringEntity;
import org.json.JSONObject;

import java.io.UnsupportedEncodingException;

/**
 * Created by dellpc on 2016/8/10.
 */
public class netDocSignUp extends POSTmethod {
    public void Go(JSONObject json, RequestCallBack requestCallBack) throws UnsupportedEncodingException {
        RequestParams params = new RequestParams();
        params.setBodyEntity(new StringEntity(json.toString(), "UTF-8"));
        this.doPost(this.urlBasic + "/doctor", params, requestCallBack);
    }
}


TestActivity.java

package com.example.roderick.networkstructure;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

import com.example.roderick.networkstructure.NetworkUtils.urlUtils.netDocSignUp;
import com.lidroid.xutils.ViewUtils;
import com.lidroid.xutils.exception.HttpException;
import com.lidroid.xutils.http.ResponseInfo;
import com.lidroid.xutils.http.callback.RequestCallBack;
import com.lidroid.xutils.view.annotation.ViewInject;

import org.json.JSONException;
import org.json.JSONObject;

import java.io.UnsupportedEncodingException;

public class TestActivity extends AppCompatActivity implements View.OnClickListener {

    @ViewInject(R.id.buttonTest)
    private Button btnTest;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_test);

        ViewUtils.inject(this);
        btnTest.setOnClickListener(this);
    }

    @Override
    public void onClick(View view) {
        final JSONObject jsonObject = new JSONObject();
        try {
            jsonObject.put("userName","Roderick");
            jsonObject.put("password","Password");
            jsonObject.put("realName","ZhenXingming");
            jsonObject.put("age","20");
            jsonObject.put("telephone","12345678910");
        } catch (JSONException e) {
            e.printStackTrace();
        }
            netDocSignUp Roderick = new netDocSignUp();
        try {
            Roderick.Go(jsonObject, new RequestCallBack() {
                @Override
                public void onSuccess(ResponseInfo responseInfo) {
                    Toast.makeText(TestActivity.this, "Login successed", Toast.LENGTH_SHORT).show();
                }

                @Override
                public void onFailure(HttpException e, String s) {
                    Toast.makeText(TestActivity.this, "Login Failed", Toast.LENGTH_SHORT).show();
                    Toast.makeText(TestActivity.this, "JSON: " + jsonObject.toString(), Toast.LENGTH_SHORT).show();
                }
            });
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }
}

代码如上


URL要求如上

因为涉及到多个URL,所以我把常用的POST方法进行了二次封装,之后用继承的方式,在子类里实现具体的URL访问
调试时候URL地址显示正常 但是服务器拒绝访问 因为服务器是很多人公用的,其他人可以用所以问题应该不在服务器上
求各位大神帮忙看一下 我这里面哪儿出问题了?多谢!!
P.s.我用的是Android Studio, 而且对于Eclipse不了解没用过。。。

2 个解决方案

#1


错误码是什么?可能是服务器的权限或者接口问题呢?

#2


网络权限加了么

推荐阅读
  • 本文介绍了解决Netty拆包粘包问题的一种方法——使用特殊结束符。在通讯过程中,客户端和服务器协商定义一个特殊的分隔符号,只要没有发送分隔符号,就代表一条数据没有结束。文章还提供了服务端的示例代码。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • Java自带的观察者模式及实现方法详解
    本文介绍了Java自带的观察者模式,包括Observer和Observable对象的定义和使用方法。通过添加观察者和设置内部标志位,当被观察者中的事件发生变化时,通知观察者对象并执行相应的操作。实现观察者模式非常简单,只需继承Observable类和实现Observer接口即可。详情请参考Java官方api文档。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 关键词:Golang, Cookie, 跟踪位置, net/http/cookiejar, package main, golang.org/x/net/publicsuffix, io/ioutil, log, net/http, net/http/cookiejar ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 本文介绍了在多平台下进行条件编译的必要性,以及具体的实现方法。通过示例代码展示了如何使用条件编译来实现不同平台的功能。最后总结了只要接口相同,不同平台下的编译运行结果也会相同。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • Java中包装类的设计原因以及操作方法
    本文主要介绍了Java中设计包装类的原因以及操作方法。在Java中,除了对象类型,还有八大基本类型,为了将基本类型转换成对象,Java引入了包装类。文章通过介绍包装类的定义和实现,解答了为什么需要包装类的问题,并提供了简单易用的操作方法。通过本文的学习,读者可以更好地理解和应用Java中的包装类。 ... [详细]
  • Spring学习(4):Spring管理对象之间的关联关系
    本文是关于Spring学习的第四篇文章,讲述了Spring框架中管理对象之间的关联关系。文章介绍了MessageService类和MessagePrinter类的实现,并解释了它们之间的关联关系。通过学习本文,读者可以了解Spring框架中对象之间的关联关系的概念和实现方式。 ... [详细]
author-avatar
手机用户2502871761
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有