Reputation: 1263
i'm trying to call an api in my application i've the following url template
test-test.domainname.com/feeds/json/v3/attribute/attribute
i'm using retrofit 2 but i get the following fatal exception
Illegal URL: test-test.domainname.com
and this is my interface
public interface Iinterface{
@GET("feeds/json/v3/attribute/"+attribute)
Call<ArrayList<result>>getresult();
}
can someone help me with this problem ...
Upvotes: 7
Views: 17760
Reputation: 126
By mistake, I provided empty string to baseUrl() so because of this i was getting java.lang.IllegalArgumentException: Illegal URL
exception.
Upvotes: 0
Reputation: 1453
In my case,
my base url contained space character. (eg. http://myapiname.azure webservices.net
)
I fixed this Error by removing space in my base URL.
Illegal URL Exception in retrofit is triggered when your passed url is not really existed or not fix with url standard.
Upvotes: 0
Reputation: 6663
my base URL is here: http://myapiname.azurewebservices.net
and feed method is like that :
public interface Iinterface{
@GET("/feeds/json/v3/attribute/"+attribute)
Call<ArrayList<result>>getresult();
}
And working perfectly. Please add http or https
and try again
Upvotes: 11
Reputation: 32026
You do not have a protocol section. Prepend http://
or https://
depending on which applies to your url --
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("http://test-test.domainname.com")
// ... other retrofit options
.build();
Upvotes: 7