mirror of
https://github.com/KokaKiwi/BarInsta
synced 2024-11-24 23:57:30 +00:00
try-catch for anonymous user parsing
This commit is contained in:
parent
036edbea10
commit
b135276fa2
@ -222,7 +222,7 @@ class ProfileFragmentViewModel(
|
||||
private suspend fun fetchUser(
|
||||
currentUser: User?,
|
||||
stateUsername: String,
|
||||
): User {
|
||||
): User? {
|
||||
if (currentUser != null) {
|
||||
// logged in
|
||||
val tempUser = userRepository.getUsernameInfo(stateUsername)
|
||||
|
@ -178,12 +178,15 @@ open class GraphQLRepository(private val service: GraphQLService) {
|
||||
// TODO convert string response to a response class
|
||||
open suspend fun fetchUser(
|
||||
username: String,
|
||||
): User {
|
||||
): User? {
|
||||
val response = service.getUser(username)
|
||||
val body = JSONObject(response
|
||||
try {
|
||||
val body = JSONObject(
|
||||
response
|
||||
.split("<script type=\"text/javascript\">window._sharedData = ").get(1)
|
||||
.split("</script>").get(0)
|
||||
.trim().replace(Regex("\\};$"), "}"))
|
||||
.trim().replace(Regex("\\};$"), "}")
|
||||
)
|
||||
val userJson = body
|
||||
.getJSONObject("entry_data")
|
||||
.getJSONArray("ProfilePage")
|
||||
@ -224,6 +227,11 @@ open class GraphQLRepository(private val service: GraphQLService) {
|
||||
externalUrl = url,
|
||||
)
|
||||
}
|
||||
catch (e: Exception) {
|
||||
Log.e(TAG, "fetchUser failed", e)
|
||||
return null
|
||||
}
|
||||
}
|
||||
|
||||
// TODO convert string response to a response class
|
||||
suspend fun fetchPost(
|
||||
|
Loading…
Reference in New Issue
Block a user