Setting a Single Parameter

Avatar of Hemanta SundarayHemanta Sundaray

To set a single query parameter, use HttpClientRequest.setUrlParam().

In the example below, we add a limit parameter to restrict the number of users returned by the API.

http.ts
import {
FetchHttpClient,
HttpClient,
HttpClientRequest,
} from "effect/unstable/http";
import { Effect } from "effect";
function fetchUsersWithLimit(limit: number) {
return Effect.gen(function* () {
const client = yield* HttpClient.HttpClient;
const request = HttpClientRequest.get("https://dummyjson.com/users").pipe(
HttpClientRequest.setUrlParam("limit", limit.toString()),
);
const response = yield* client.execute(request);
const data = yield* response.json;
return data;
}).pipe(Effect.provide(FetchHttpClient.layer));
}
// Test it
Effect.runPromise(fetchUsersWithLimit(3)).then((data) => {
console.log("Names:", data.users.map((user) => user.firstName).join(", "));
});

Output:

Terminal
Names: Emily, Michael, Sophia

Sign in to save progress

Stay in the loop

Get notified when new chapters are added and when this course is complete.