【异常】微博生成短链异常{"request":"/2/short_url/shorten.json","error_code":"10014","error":"Insufficient app permissions!"}

一、之前的调用方式

这种方式用了大约有一年时间,之前没有问题,但是2019-8-28号突然不行了,可能是由于微博对该接口的调用做了限制。不允许通过传递source参数的方式进行请求

该接口微博API文档

  /**
     * source去新浪微博申请App Key
     * @param long_url
     * @return
     */
    @Deprecated
    public static String getShortUrl2(String long_url) {
        String result = HttpUtils.get(
                "https://api.weibo.com/2/short_url/shorten.json?source="+app_key+"&url_long=" + long_url);

        JSONObject jsonObject = JSON.parseObject(result);

        JSONObject urls = jsonObject.getJSONArray("urls").getJSONObject(0);
        String url_short = urls.getString("url_short");
        return url_short;
    }

二、修改后的调用方式

该接口微博API文档地址

  /**
     * source去新浪微博申请App Key
     * @param long_url
     * @return
     */
    public static String getShortUrl(String long_url) {
        String result = HttpUtils.get(
                "https://api.t.sina.com.cn/short_url/shorten.json?source="+app_key+"&url_long=" + long_url);

        JSONObject jsonObject = JSON.parseArray(result).getJSONObject(0);

        String url_short = jsonObject.getString("url_short");
        return url_short;
    

原文地址:https://www.cnblogs.com/756623607-zhang/p/11441190.html

时间: 2024-10-15 18:11:54

【异常】微博生成短链异常{"request":"/2/short_url/shorten.json","error_code":"10014","error":"Insufficient app permissions!"}的相关文章

Net的wsdl生成webservice 异常:undefined simple or complex type 'soapenc:Array'

错误代码如下: E:\>wsimport -keep service.xml parsing WSDL... [WARNING] src-resolve: Cannot resolve the name 'soapenc:Array' to a(n) 'type definition' component. line 505 of file:/E:/service1.xml#types?schema2 [ERROR] undefined simple or complex type 'soape

长网址生成短链接生成器源码分享

短网址(Short URL) ,顾名思义就是在形式上比较短的网址.通常用的是asp或者php转向,在Web 2.0的今天,不得不说,这是一个潮流.目前已经有许多类似服务,借助短网址您可以用简短的网址替代原来冗长的网址,让使用者可以更容易的分享链接. 下面小编就为大家推荐下市场上主流短网址生成服务应用: 1.酷牛短链接     http://knurl.cn 酷牛短链接是一款新浪短网址(t.cn)和腾讯短链接(url.cn)的在线生成工具,将长链接转换成t.cn和url.cn格式的短链接. 2.雷

第十九节(异常的基本概念, 异常的分类, 异常的捕获和处理,自定义异常,方法覆盖与异常)

1: Java 异常处理 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 异常发生的原因有很多,通常包含以下几大类: 1. 用户输入了非法数据. 2. 要打开的文件不存在. 网络通信时连接中断,或者JVM内存溢出.这些异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的. 要理解Java异常处理是如何工作的,要掌握以下三种类型的异常: 检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的.例如要打开一个不

java中的一般异常与运行时异常

Java提供了两类主要的异常:runtime exception和checked exception.checked 异常也就是我们经常遇到的IO异常,以及SQL异常都是这种异常.对于这种异常,JAVA编译器强制要求我们必需对出现的这些异常进行catch.所以,面对这种异常不管我们是否愿意,只能自己去写一大堆catch块去处理可能的异常. 但是另外一种异常:runtime exception,也称运行时异常,我们可以不处理.当出现这样的异常时,总是由虚拟机接管.比如:我们从来没有人去处理过Nul

检查异常和未检查异常不同之处

public class ExceptionTypeTest { public void doSomething()throws ArithmeticException{ System.out.println(); } public static void main(){ ExceptionTypeTest ett = new ExceptionTypeTest(); ett.doSomething(); } } 问题1:上面的程序能否编译通过?并说明理由. 解答:能编译通过.分析:按照一般常理

首次异常和二次异常

调试器通常有两次机会来处理同一个异常:首次处理异常和二次处理异常.调试器第一次附加到进程时,会发生一个异常,然后被调试的程序停止执行,此时调试器开始获得控制权.调试器可以自己处理异常,也可以将异常转给被调试的应用程序处理 如果程序注册了一个异常处理函数,他会在调试器处理异常后,获取处理异常的权限. 例如 除0操作 如果应用程序没有处理异常,调试器将获得另一个调试的机会——二次处理异常.调试器接受到一个二次处理异常后,意味着如果程序没有附加到调试器就会崩溃,为了让应用程序正常运行,调试器必须处理异

java 检查异常 和 非检查异常

个人见解 ,如果有问题 ,还希望大神们 指正 1. 非检查异常 又称运行时 异常 ,所有 继承自 RuntimeException 的异常都是 非检查异常  ,, 如果你不处理  会有 虚拟机 main  方法处理 2. 凡是 不继承自 RuntimeException 的异常都是 检查异常 (如 IO 异常) 3. 上层调用者必须对  检查 异常 做处理 : try_catch  或者 继续 throws 给上层处理 4.  为什么要有检查异常: 通常情况下 ,检查异常 并不是你的程序写的有问

JAVA异常基本知识及异常在Spring框架中的整体解决方案

异常的顶级父类是Throwable,下面有两个子类Exception和Error. Error错误一般是虚拟机相关的问题,如系统崩溃,虚拟机错误等,应用程序无法处理,直接导致应用程序运行结束. Exception是我们需要处理的异常. Exception又分为Checked异常和Runtime异常. 所有RuntimeException类及其子类都是Runtime异常.其他的为Checked异常. Checked异常必须显示处理,如果没有处理会发生编译错误. RunTime和Checked的处理

跟王老师学异常(三)异常类的继承体系

异常类的继承体系 主讲人:王少华  QQ群号:483773664 学习目标: 1.掌握异常的体系 2.掌握处理异常类的几中常用方法 一.异常类继承体系图 Java提供了丰富的异常类,这些异常类之间有严格的继承关系,如下图所示 从上图可以看出,Java把所有非正常情况分成两种,一种是异常(Exception),另一种是错误(Error),它们都继承Throwable父类. 二.Error Error错误,一般是指虚拟机相关的问题.即仅靠程序本身无法恢复的严重错误.如系统崩溃.虚拟机出错误.动态链接