Передача списка словарей в качестве параметров в Axios React
Я создаю приложение на React. Я пытаюсь отправить список словарей в качестве параметров в Axios.
Я использую Django REST Framework в качестве бэкенда и он показывает []
или None
каждый раз, когда я отправляю запрос.
App.js
function App() {
const [currentState, setCurrentState] = useState([{"name": "First", "id": 100}, {"name": "Second", "id": 200},])
const sendRequest = () => {
axios.get("/api/", {params: {state: currentState}).then((res) => {
console.log(res);
})
}
return (
<>
<b onClick={sendRequest}>Send request</b>
</>
)
}
Я пытаюсь отправить весь список в бэкенд в виде параметров, например:
[{"name": "First", "id": 100}, {"name": "Second", "id": 200}]
Но он не показывает ничего.
В бэкенде я получаю доступ следующим образом:
views.py
class Api(APIView):
def get(self, request, *args, **kwargs):
data = self.request.query_params.get("state")
print(data)
return Response({"good"})
Я также пробовал использовать paramsSerializer
в axios для сериализации, например :-
const sendRequest = () => {
axios.get("/api/",
{
params: {
state: currentState
},
paramsSerializer: params => {
return qs.stringify(params, {arrayFormat: "repeat"})
},
).then((res) => {
console.log(res);
})
}
, но он все еще не работает. Пробовал также {arrayFormat: "brackets"}
,