我有一个API,我需要从标头中提取信息并进行另一次调用。我已经尝试了许多方法,但似乎无法仅获取标头。没有其他响应。
我尝试过让它返回各种响应对象,例如okhttp3标头,Retrofit标头,HttpHeaders等,但首先获得EOF。
@POST("api/booking/search")
fun bookFlight(@Body bookFlightDetails: BookFlightDetails): Observable<Response<Headers>>
class DataManager(context: AllegiantApplication, private val mApi: RxRestServices) {
fun bookFlight(bookingDetails: BookFlightDetails) : Observable<Response<Headers>>? {
return mApi.bookFlight(bookingDetails)
}
fun bookFlight(bookingDetails: BookFlightDetails) {
mDataManager.bookFlight(bookingDetails)
?.subscribeOn(Schedulers.io())
?.observeOn(AndroidSchedulers.mainThread())
?.subscribe({
processHeader(it)
}, {
error -> Log.d("TAG", error.localizedMessage) // <- EOF at 1st char
}
)
}
任何人都可以告诉我我需要如何构建我的api调用来获取标头吗?
这个月我第二次回答了自己的问题。
这个是双重的。1)获得正确的回应类型。我去了
Observable<Response<ResponseBody>>
这让我看到了标题。然而,第二部分是我在将它发送到processHeader之前消耗了它。我正在给processHeader it
使用响应。我将订阅方法从:
processHeader(it)
收件人:
val headers = it?.headers()
processHeader(headers)
因此,processHeaders 只能看到响应可以正常“消耗”的标头
我使用Reformation2和RxJava2从服务器获取数据。我有以下格式的回复: 我得到以下异常: ApiService.class RetrofitClient.class 现在我正在使用如下的一些东西来获取数据: 有人请让我知道为什么我得到这个exception.Any帮助将不胜感激。 谢谢
注意:我使用()而不是尖括号 我有一个MVP android应用程序,它使用Retofit2和RxJava2从GitHub Api获取数据。代码运行良好,我能够恢复一个可观察的(响应(列表(头)),其中响应来自Reformation2,头来自OkHttp3。 但是当涉及到单元测试时,我遇到了一个问题:我无法模拟响应(List(Headers))。Retrofit2响应类有一个私有构造函数,所以我无
在RXJava1中,有CompositeSubscription,但在RxJava2中没有,在RxJava2中有CompositeDisable。我如何在RXJava2中使用CompositeDisposable或Disposable?
如何使用注册为频道管理员的机器人访问电报频道消息? 我试图从电报频道获取所有信息,并在ASP.NET网页上显示出来(c#) 当新消息直接发送到机器人时,我能够获得更新: 但它不适用于该频道。
我从Cucumber 1.2.5升级到Cucumber 5.6.0。升级进行得很顺利,但是我的扩展报告坏了。我尝试升级它们并使用Cucumber 4适配器。文件很稀少,我无法让它工作。所以我去下载了示例实现。我能够编译和运行它,并获得报告。我将示例项目升级到Cucumber 4.8.1,将Extent Reporter升级到4,然后运行,但没有创建报告。我不知所措,我的谷歌搜索没有找到任何信息。
我在我的swift应用程序中使用Moya进行网络请求。 我能够获得请求和映射结果使用Moya-Object Mapper。 我以前使用过alamofire,我熟悉如何进行post,获取请求和阅读响应头。 然而,我似乎无法理解我怎么能在莫亚也这样做。 我确实浏览了文档,但它没有说明任何关于读取响应头的内容。 有没有任何例子或教程,我可以遵循如何做一个HTTP身份验证和读取响应头。以及如何发出post