我目前正在Android studio中使用Youtube-API。 API在浏览器中工作正常,但我在android studio中面临2个问题。这些是: 1)API在获取数据时出错。然后我需要再次启用它,然后它再次工作。为什么? 2)当我的API在浏览器中工作正常时,我得到错误401未经授权。
以下是我的界面代码:
public interface APInterface {
@Multipart
@POST("/playlistItems?part=snippet&playlistId=PLcVfz1-_0rj93LJZjzOHE6phn25MUK4lt&key=AIzaSy*****************&maxResults=50")
void getData(@Part("") String name,Callback<Result> callback);
}
和MainActivity.java文件是:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
RestAdapter restAdapter = new RestAdapter.Builder().setEndpoint(Constant.url).build();
APInterface apInterface = restAdapter.create(APInterface.class);
apInterface.getData("",new Callback<Result>() {
@Override
public void success(Result result, Response response) {
Toast.makeText(MainActivity.this, "Success!", Toast.LENGTH_SHORT).show();
}
@Override
public void failure(RetrofitError error) {
Toast.makeText(MainActivity.this,"Failure!"+error.getMessage(),Toast.LENGTH_SHORT).show();
Log.e("Error:",""+error.getMessage());
}
});
}
}
我正在使用改装1.9和互联网许可,并且gradle是可以的。请帮忙。
答案 0 :(得分:0)
我也遇到了类似的问题,我通过移除Authorization header
中的Retrofit
来修复它。试试这个
OkHttpClient.Builder client = new OkHttpClient.Builder()
.connectTimeout(5, TimeUnit.MINUTES)
.retryOnConnectionFailure(true)
.readTimeout(5, TimeUnit.MINUTES);
client.addInterceptor(httpLoggingInterceptor);
//client.addInterceptor(new AuthTokenInterceptor(sessionManager));