先問下題主,樓上兩位理解你的問題是不是方向錯(cuò)了,如果他們沒錯(cuò),請(qǐng)忽略下面。
如果他們錯(cuò)了,你的問題是不是可以簡(jiǎn)化為 PHP下 curl/file_get_content獲取頁面不完整,php是運(yùn)行在一個(gè)用nginx代理或者解析的php-fpm實(shí)例中?
如果是這個(gè)意思,請(qǐng)測(cè)試回復(fù) 你是固定只能獲得一定長(zhǎng)度的內(nèi)容,還是不固定長(zhǎng)度?如果是固定長(zhǎng)度,這個(gè)大小是多少?
不要修改你依賴庫的東西(node_modules 這里面的所有文件),這個(gè)路徑為了在項(xiàng)目中使用時(shí)正確的找到第三方模塊的位置,是 npm 工作時(shí)自動(dòng)加上的,對(duì)你項(xiàng)目沒有任何影響。
可以的,你可以使用 -e http.content_length
來輸出 http body 的長(zhǎng)度。
前提是你的 http 回應(yīng)包沒有分片,或者你將 tshark 配置成顯示重組包
https配置的server_name
下方加兩行配置:
謝謝大家。已經(jīng)找到原因。因?yàn)閮?nèi)網(wǎng)后proxy代理。使用--httpproxy 后面加上賬號(hào)密碼和代理地址即可。例如:
rpm -vih http://dl.fedoraproject.org/p... --httpproxy "http://user:password@代理網(wǎng)址"
-f 代表文件,-d 代表目錄,[]里側(cè)一定要有空格
自己找到了答案了,我再啟動(dòng)文件里面啟動(dòng)了監(jiān)聽watch: true
,又開啟了更新日志
這種情況,要么取消監(jiān)聽,要么排除log日志的監(jiān)聽
使用rxjava吧
線程操作比較方便
package com.github.rxjavatest
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.support.v7.widget.GridLayoutManager
import android.support.v7.widget.RecyclerView
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import com.bumptech.glide.Glide
import io.reactivex.Observable
import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.functions.BiFunction
class MainActivity : AppCompatActivity() {
lateinit var recyclerView: RecyclerView
val list = arrayListOf<String>()
val adapter = ImageAdapter(list)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
recyclerView = findViewById(R.id.recyclerView)
recyclerView.layoutManager = GridLayoutManager(this, 3)
recyclerView.adapter = adapter
initImage()
}
private fun initImage() {
val imageGetter = ImageGetter("http://588ku.com/beijing/0-0-pxnum-4-8-0-0-0-1/")
val imgOb = imageGetter.getImageObserable()
val imageGetter2 = ImageGetter("http://588ku.com/beijing/0-0-pxnum-4-8-0-0-0-2/")
val imgOb2 = imageGetter2.getImageObserable()
Observable.zip(imgOb, imgOb2, BiFunction<List<String>, List<String>, List<String>> { t1, t2 ->
val list = arrayListOf<String>()
list.addAll(t1)
list.addAll(t2)
list
}).observeOn(AndroidSchedulers.mainThread())
.subscribe {
list.addAll(it)
adapter.notifyDataSetChanged()
}
}
}
class ImageAdapter(val list: List<String>) : RecyclerView.Adapter<VH>() {
override fun onBindViewHolder(holder: VH?, position: Int) {
holder?.apply {
val src = list[position]
Glide
.with(itemView)
.load(src)
.into(img)
}
}
override fun onCreateViewHolder(parent: ViewGroup?, viewType: Int): VH {
val view = LayoutInflater.from(parent?.context)?.inflate(R.layout.item_img, parent, false)
return VH(view)
}
override fun getItemCount(): Int {
return list.size
}
}
class VH(itemView: View?) : RecyclerView.ViewHolder(itemView) {
val img: ImageView by lazy { itemView!!.findViewById<ImageView>(R.id.iv_image) }
}
package com.github.rxjavatest
import android.annotation.SuppressLint
import android.util.Log
import io.reactivex.Observable
import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.schedulers.Schedulers
import org.jsoup.Jsoup
import org.jsoup.nodes.Document
import java.util.concurrent.Executors
/**
* Created by cai on 2018/2/12.
*/
class ImageGetter(var url: String) {
fun getImageObserable(): Observable<ArrayList<String>> {
return Observable
.create<Document> {
val doc = Jsoup.connect(url)
.get()
it.onNext(doc)
it.onComplete()
}
.subscribeOn(Schedulers.io())
.map {
it.select("div a img")
}
.map {
val list = arrayListOf<String>()
it.forEach {
val image = it.attr("data-original")
list.add(image)
}
list
}
.observeOn(AndroidSchedulers.mainThread())
}
@SuppressLint("SetJavaScriptEnabled")
companion object {
}
}
val Any.TAG
get() = this.javaClass.simpleName
fun Any.logger(msg: Any?) {
Log.i(TAG, msg.toString())
}
簡(jiǎn)單寫了個(gè)demo
項(xiàng)目地址
這里用JSoup爬數(shù)據(jù)
然后Rxjava返回?cái)?shù)據(jù)流處理結(jié)果的img src的集合的Observable
在實(shí)際Activity中同時(shí)獲得兩個(gè)Observable,使用zip操作符組合,然后在主線程中將圖片添加到list
刷新adapter
使用Glide加載圖片
1、確定接口是否為跨域接口
2、前后端確定發(fā)送和返回的content-type是否一致
可以試試在 tomcat/conf/context.xml中修改一下:
<Context antiResourceLocking="true">
scroll是個(gè)高頻事件,如果按Ls大神的來實(shí)現(xiàn)時(shí)要小心這點(diǎn)。
另外我翻了翻收藏夾,貌似有倆庫能做這個(gè)需求:
你留著參考吧。當(dāng)然還是更推薦Ls大神的方法。
Here is the code~
@Around("...")
public Object controllerLogAround(ProceedingJoinPoint pjp) throws Throwable {
...
// 方法形參
Object[] methodArgs = pjp.getArgs();
// 調(diào)用并得到返回值
Object returnValue = pjp.proceed(methodArgs);
...
return returnValue;
}
t::Func
是t
的成員函數(shù),有一個(gè)隱藏參數(shù)this
,自然要先傳一個(gè)參數(shù)進(jìn)去。。t1.push_back(make_shared<thread>(&t::Func, NULL)); //(1)
你這么寫也行。。
是不是在my.cnf文件下 加 skip-grant-tables
跳過密碼登錄了
(window下 好像叫my.ini)
iPhone手機(jī)么?
如果是,到手機(jī) 【設(shè)置】--【通用】--【關(guān)于本機(jī)】--【證書信任設(shè)置】,信任下 再試試能不能抓到
任務(wù)管理器結(jié)束進(jìn)程也沒用嗎
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
北大青鳥中博軟件學(xué)院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網(wǎng)學(xué)院和江蘇省首批服務(wù)外包人才培訓(xùn)基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團(tuán)創(chuàng)建于1999年,經(jīng)過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術(shù)與教育服務(wù)機(jī)構(gòu),發(fā)展為教育服務(wù)業(yè)的綜合性企業(yè)集團(tuán),成為集合面授教學(xué)培訓(xùn)、網(wǎng)
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國成功上市,融資1
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。