http basic authentication通过post方式访问api示例分享 basic认证示例

代码如下:

private static String url = PropertiesLoader.getProperty("ALLYES_SERVER", false);
    private static String username = PropertiesLoader.getProperty("ALLYES_USERNAME", false);
    private static String password = PropertiesLoader.getProperty("ALLYES_PASSWORD", false);

/**
     * 添加创意
     *
     * @param creativeAudit
     * @return
     */
    public static Map<String, Object> addCreative(CreativeAudit creativeAudit) {
        //name,width,height,type,creativeTagId, code,bindId
        String type = "9";
        if (creativeAudit.getRelative_path().toLowerCase().endsWith("gif"))
            type = "10";
        if (creativeAudit.getRelative_path().toLowerCase().endsWith("swf"))
            type = "11";
        Map<String, Object> result = new HashMap<String, Object>();

String addUrl = url + "/creatives/add";
        DefaultHttpClient httpClient = new DefaultHttpClient();
        httpClient.getCredentialsProvider().setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password));
        try {
            List<NameValuePair> postparams = new ArrayList<NameValuePair>();
            postparams.add(new BasicNameValuePair("name", creativeAudit.getName()));
            postparams.add(new BasicNameValuePair("width", Integer.toString(creativeAudit.getWidth())));
            postparams.add(new BasicNameValuePair("height", Integer.toString(creativeAudit.getHeight())));
            postparams.add(new BasicNameValuePair("type", type));
            postparams.add(new BasicNameValuePair("creativeTagId", creativeAudit.getAdCategory().getAd_caterory().substring(2)));
            postparams.add(new BasicNameValuePair("code", creativeAudit.getCode()));
            postparams.add(new BasicNameValuePair("bindId", creativeAudit.getGeoid()));
            UrlEncodedFormEntity entity = new UrlEncodedFormEntity(postparams, "UTF-8");
            HttpPost httpPost = new HttpPost(addUrl);
            httpPost.setEntity(entity);
            HttpResponse httpResponse = httpClient.execute(httpPost);
            int statusCode = httpResponse.getStatusLine().getStatusCode();
            if (statusCode == HttpStatus.SC_OK) {
                HttpEntity httpEntity = httpResponse.getEntity();
                String createResult = EntityUtils.toString(httpEntity, "UTF-8");
                JSONObject jsonObject = JSONObject.fromObject(createResult);
                String uuid = jsonObject.get("id").toString();
                creativeAudit.setUuid(uuid);
                result.put("success", creativeAudit);
            } else {
                HttpEntity httpEntity = httpResponse.getEntity();
                String createResult = EntityUtils.toString(httpEntity, "UTF-8");
                String errorMessage = "新增创意:" + creativeAudit.getGeoid() + "出错,状态码:" + statusCode + "; " + createResult;
                result.put("failed", errorMessage);
            }
        } catch (Exception ue) {
            ue.printStackTrace();
            result.put("failed", "添加创意时提交的数据有问题!");
        }
         /*
        creativeAudit.setUuid("189-"+creativeAudit.getGeoid());
        result.put("success",creativeAudit);
        */
        return result;
    }

(0)

相关推荐

  • 浅谈HTTP使用BASIC认证的原理及实现方法

    一.BASIC认证概述 在HTTP协议进行通信的过程中,HTTP协议定义了基本认证过程以允许HTTP服务器对WEB浏览器进行用户身份证的方法,当一个客户端向HTTP服务 器进行数据请求时,如果客户端未被认证,则HTTP服务器将通过基本认证过程对客户端的用户名及密码进行验证,以决定用户是否合法.客户端在接收到HTTP服务器的身份认证要求后,会提示用户输入用户名及密码,然后将用户名及密码以BASE64加密,加密后的密文将附加于请求信息中, 如当用户名为anjuta,密码为:123456时,客户端将用

  • HTTP基本认证(Basic Authentication)的JAVA实例代码

    大家在登录网站的时候,大部分时候是通过一个表单提交登录信息. 但是有时候浏览器会弹出一个登录验证的对话框,如下图,这就是使用HTTP基本认证. 下面来看看一看这个认证的工作过程: 第一步: 客户端发送http request 给服务器,服务器验证该用户是否已经登录验证过了,如果没有的话, 服务器会返回一个401 Unauthozied给客户端,并且在Response 的 header "WWW-Authenticate" 中添加信息. 如下图. 第三步: 服务器将Authorizati

  • java 发送带Basic Auth认证的http post请求实例代码

    构造http header private static final String URL = "url"; private static final String APP_KEY = "key"; private static final String SECRET_KEY = "secret"; /** * 构造Basic Auth认证头信息 * * @return */ private String getHeader() { String

  • http basic authentication通过post方式访问api示例分享 basic认证示例

    复制代码 代码如下: private static String url = PropertiesLoader.getProperty("ALLYES_SERVER", false);    private static String username = PropertiesLoader.getProperty("ALLYES_USERNAME", false);    private static String password = PropertiesLoad

  • 基于域名的方式访问Istio服务网格中的多个应用程序的方法详解

    目录 1.为什么要使用域名访问部署在Istio中的程序 2.通过域名的方式访问Istio网格中的应用程序 2.1.配置Gateway和VirtualService资源 2.1.1.修改httpbin程序的Gateway和VirtualService资源 2.1.2.修改bookinfo程序的Gateway和VirtualService资源 2.1.3.修改nginx程序的Gateway和VirtualService资源 2.2.配置LB代理Istio的IngressGateway 3.基于域名来

  • IIS7.0 Windows Server 2008 R2 下配置证书服务器和HTTPS方式访问网站的教程图文详解

    配置环境 Windows版本:Windows Server 2008 R2 Enterprise Service Pack 1 系统类型: 64 位操作系统 了解HTTPS 为什么需要 HTTPS ? 在我们浏览网站时,多数网站的URL都是以HTTP开头,HTTP协议我们比较熟悉,信息通过明文传输; 使用HTTP协议有它的优点,它与服务器间传输数据更快速准确; 但是HTTP明显是不安全的,我们也可以注意到,当我们在使用邮件或者是在线支付时,都是使用HTTPS; HTTPS传输数据需要使用证书并对

  • Google官方支持的NodeJS访问API,提供后台登录授权

    安装 此库通过npm发布.通过以下命令安装googleapis及其依赖 $ npm install googleapis 完整的API支持列表 https://developers.google.com/apis-explorer 使用 例1: 通过Google短地址获取完整地址 var google = require('googleapis'); var urlshortener = google.urlshortener('v1'); var params = { shortUrl: 'h

  • JavaScript中访问id对象 属性的方式访问属性(实例代码)

    实例如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Co

  • 详解java中通过post方式访问后台服务器

    最近在学习java中通过post方式访问后台服务器,那么今天也算个学习笔记吧! 首先,上代码: Runnable payRunnable = new Runnable() { @Override public void run() { try { HashMap<String, String> payParamMap = new HashMap<String, String>(); payParamMap.put("canshu" ,"woshican

  • IdnentiyServer使用客户端凭据访问API的实例代码

    情景如下:一个客户端要访问一个api,不需要用户登录,但是又不想直接暴露api给外部使用,这时可以使用identityserver添加访问权限. 客户端通过clientid和secrect访问identitserver的Token Endpoint,获取accesstoken: 接着客户端再使用accesstoken作为头部验证访问webapi.(webapi已经添加了identityserver的相关验证). 代码实现:其中 "http://localhost:5000"是ident

  • Python转换字典成为对象,可以用"."方式访问对象属性实例

    我就废话不多说了,大家还是直接看代码吧! database = [ { "name": "18D_Block", "xcc":{ "component": { "core":[], "platform":[] }, }, "uefi":{ "component": { "core":[], "platform"

  • Nginx配置同一个域名同时支持http与https两种方式访问实现

    Nginx配置同一个域名http与https两种方式都可访问,证书是阿里云上免费申请的 server { listen 80; listen 443 ssl; ssl on; server_name 域名; index index.html index.htm index.php default.html default.htm default.php; ssl_certificate /usr/local/nginx/cert/21402058063066221.pem; //下载申请后阿里s

随机推荐