Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/id/doujindesu/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ plugins {

keiyoushi {
name = "Doujindesu"
versionCode = 18
versionCode = 19
contentWarning = ContentWarning.NSFW
libVersion = "1.4"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,13 +38,15 @@ abstract class Doujindesu : HttpSource() {
.addInterceptor { chain ->
val request = chain.request()
val url = request.url.toString()
val headers = request.headers.newBuilder()

if (imageDomains.any { url.contains(it) }) {
headers.removeAll("x-app-secret")
if (!url.contains(apiUrl)) {
val newHeaders = request.headers.newBuilder()
.removeAll("x-app-secret")
.build()
return@addInterceptor chain.proceed(request.newBuilder().headers(newHeaders).build())
}

chain.proceed(request.newBuilder().headers(headers.build()).build())
chain.proceed(request)
}
.build()
}
Expand All @@ -53,6 +55,17 @@ abstract class Doujindesu : HttpSource() {
.add("x-app-secret", APP_SECRET)
.add("Referer", "$baseUrl/")

override fun imageRequest(page: Page): Request {
val headers = headersBuilder()
.set("Accept", "image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8")
.set("Sec-Fetch-Dest", "image")
.set("Sec-Fetch-Mode", "no-cors")
.set("Sec-Fetch-Site", "cross-site")
.build()

return GET(page.imageUrl!!, headers)
}

override fun popularMangaRequest(page: Int): Request = searchRequest(page, "rating")

override fun popularMangaParse(response: Response): MangasPage = searchMangaParse(response)
Expand Down Expand Up @@ -211,7 +224,5 @@ abstract class Doujindesu : HttpSource() {
companion object {
private const val APP_SECRET = "dfdf72051dbfdc7d76889ebd31324e74"
private const val LIMIT = 24

private val imageDomains = listOf("desu.photos", "cdn-static.desu.xxx", "desu.pics", "uploads", "upload")
}
}