The web app works perfectly on NSS but has problems on CSS

I’m doing research on Solid servers. I use Solidflix to connect to the Solid server. GitHub - OxfordHCC/solid-media: A demonstration of the use of Solid in a small media recommendation sharing app.

First time, I used SolidCommunity to login which is a Node Solid Server. The web app worked perfectly and all functions were working.
Second time, I used a local Community Solid Server to login. But this time, there were some problems.
I clicked the Like button, but the server returned 412 error.

I doubt the problem is in saveSolidDatasetAt function but I’m not sure.
The function is in row 642 in /src/components/DiscoverPane.tsx.

{text: '👍', cssClass: 'carousel-like', selected: liked === true, click: async () => {
remove('https://schema.org/Rating');
remove('https://schema.org/ReviewAction');
										
if (liked === true) {
 await saveSolidDatasetAt(solidUrl, dataset, {fetch: session.fetch});
 globalState.setState({
  myLiked: globalState.state.myLiked!.filter(x => x !== movie),
  movies: {...globalState.state.movies, [movie]: {...movieData, liked: null, dataset}},
});
} else {
 rate(3);
 await saveSolidDatasetAt(solidUrl, dataset, {fetch: session.fetch.bind(session)});
 globalState.setState({
  myLiked: [movie, ...globalState.state.myLiked!],
  movies: {...globalState.state.movies, [movie]: {...movieData, liked: true, dataset}},
});
}}}

I also tried it in solidweb.me which is also a CSS PODs provider. The problem was still there.
I don’t understand why this problem only appears in CSS but not in NSS. Is it because there is a difference in access control between the two kinds of servers? Or is it for some other reasons? And how can I solve it?

I’m not sure but this can be due to the fact that Solidflix was not updated to the new inrupt OIDC.
NSS is able to use old and/or new OIDC connectors. CSS is only able to use the new OIDC one.

1 Like

If you’re running the CSS locally you can debug it, but a 412 error means you are sending some headers in a request that the server cannot honor or recognize, so you might want to inspect the network requests coming from the browser to the CSS and debug on where it is failing.

1 Like